我正在尝试比较从 Web 服务获得的值,但有时我得到的是 int 值,有时我得到的是字符串。所以如果我只能检查 Type.value1 就好了。
例如:
enum Type { value1 = 1 , value1="one"}
并喜欢这样以获得更多值(value)2,等等... 但是当然,我不能这样做,因为我不能为 value1 添加两个定义。
最佳答案
有时,一个主要表现得像枚举但有一些更丰富的行为的类型可能非常有用:
public sealed class MyFakeEnum {
private MyFakeEnum(int value, string description) {
Value = value;
Description = description;
}
public int Value { get; private set; }
public string Description { get; private set; }
// Probably add equality and GetHashCode implementations too.
public readonly static MyFakeEnum Value1 = new MyFakeEnum(1, "value1");
public readonly static MyFakeEnum Value2 = new MyFakeEnum(2, "value2");
}
关于c# - 如何在枚举中为相同的定义设置两个值,C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19762229/