C#中可以对枚举类型用Description特性描述。
如果需要对Description信息获取,那么可以定义一个扩展方法来实现。代码如下:
public static class EnumExtensions
{
public static string GetDescription(this object value)
{
if (value==null)
return string.Empty;
Type type = value.GetType();
var fieldInfo = type.GetField(Enum.GetName(type, value));
if(fieldInfo!=null)
{
if(Attribute.IsDefined(fieldInfo,typeof(DescriptionAttribute)))
{
var description =
Attribute.GetCustomAttribute(fieldInfo, typeof (DescriptionAttribute)) as DescriptionAttribute;
if(description!=null)
return description.Description;
}
}
return string.Empty;
}
}