如何通过反射确定 aNullable(of Enum)
是否确实是a ?Enum
我正在使用一种方法,该方法使用从数据库调用中检索到的类型动态填充类型的T
对象IDataReader
。从本质上讲,它循环遍历数据读取器的序数,T
并填充与序数名称匹配的属性(也抛出了一些属性魔术来更改列名)。在所有其他情况下,它都很好用,但是当我检查属性时BaseType
,System.Enum
我发现,System.ValueType
因此,我的枚举检查失败并且方法炸弹。
[编辑:
Type.IsEnum
不起作用我需要它。这里的主要问题是T
BaseType 层次结构中没有任何内容表明它是Enum
. 就好像让它成为一种Nullable
类型就失去了我的Enum
权利。]
有任何想法吗?