键入.net35的.GetEnumUnderlyingType()替换
本文关键字:替换 GetEnumUnderlyingType net35 键入 | 更新日期: 2023-09-27 18:00:39
我正在寻找一种方法来复制.net35中缺少的Type.GetEnumUnderlyingType()
的功能。
只需使用Enum.GetUnderlyingType
即可:
返回指定枚举的基础类型。
以下是Type
:中GetEnumUnderlyingType
的实现
public virtual Type GetEnumUnderlyingType()
{
if (!this.IsEnum)
throw new ArgumentException(
Environment.GetResourceString("Arg_MustBeEnum"), "enumType");
FieldInfo[] fields = this.GetFields(
BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
if (fields == null || fields.Length != 1)
throw new ArgumentException(
Environment.GetResourceString("Argument_InvalidEnum"), "enumType");
return fields[0].FieldType;
}