2013-02-13 103 views
3

我有一個枚舉,我想檢查枚舉類型是否是ulong。檢查枚舉類型是ulong

到目前爲止已經試過:

var checkValue = Enum.GetUnderlyingType(param.ParamType); // param is enum 
if (checkValue is ulong){ } // doesn't work 

var checkValue = param.value; 
if (checkValue is ulong){ } // doesn't work 

什麼想法?

回答

9

Enum.GetUnderlyingType返回Type類型的對象,因此,它確實不是一個ulong,它是ulong類型本身:)

試試這個:

if (checkValue == typeof(ulong)) 
+0

完美!爲我工作!不知道爲什麼我忘記了typeof ... – inside 2013-02-13 23:09:45

+0

有時第二雙眼睛是所有需要的:) – SWeko 2013-02-13 23:11:13

0

那麼試試這個:

var enumType = param.GetType(); 

var utype = Enum.GetUnderlyingType(entype); 

if(utype == typeof(ulong))