VS2005中的C#:你可以检查一个整数是否在给定的Enum类型中声明?

时间:2010-06-29 07:09:46

标签: c# enums

对于VS2005中的C#,有没有办法检查整数是否是Enum类型的一部分?

例如:

if number in CustomerType { ... }

其中

enum CustomerType
{
    A = 0;
    B = 1;
    C = 2;
}

2 个答案:

答案 0 :(得分:5)

Enum.IsDefined(Type enumType, Object value)您要找的是什么?

而不是你的if语句:

if (Enum.IsDefined(typeof(CustomerType), number))
{
    ...
}

答案 1 :(得分:0)

尝试这样的事情:

var value = Enum.GetName(typeof(CustomerType), 3); // instead of 3 you can use any value

其中CustomerType是:

public enum CustomerType
{
    A = 0,
    B = 1,
    C = 2,
}

通过传递3值将具有空值。如果您传递现有值(即0,1或2),那么您将获得“A”,“B”或“C”。

有关详细信息,您可以查看System.Enum类的静态方法。

...问候