在专案底下新增资料夹 Extension,建立类别
/// <summary>扩充功能</summary>public static class CHelpExtensions{ /// <summary> /// 取得列举定义的字串 /// </summary> /// <param name="value">列举</param> public static string GetDescription(this Enum value) { FieldInfo fi = value.GetType().GetField(value.ToString()); DescriptionAttribute[] attributes = fi.GetCustomAttributes( typeof(DescriptionAttribute), false) as DescriptionAttribute[]; //若取不到属性,则取名称 return attributes.Length > 0 ? attributes[0].Description : value.ToString(); }}
定义Enum
/// <summary>範例</summary>public class ExampleEnum{ /// <summary>状态</summary> public enum EStatus { [Description("成功")] SUCCESS, [Description("失败")] FAILED, [Description("资料错误")] DATA_ERROR, [Description("伺服器逾时")] TIME_OUT, [Description("伺服器维护中")] IS_MAINTENANCE, }}
使用方式
string statusName = ExampleEnum.EStatus.SUCCESS.GetDescription()