详解如何通过反射获得枚举的Display中name的值实例?

互联网 17-6-23
         /// <summary>/// 政治面貌/// </summary>public enum EumPoliticSstatus          {              [Display(Name = "党员")]              PartyMember = 1,              [Display(Name = "团员")]              Member = 2,              [Display(Name = "群众")]              Masses = 3,              [Display(Name = "民主党派")]              DemocraticParty = 4}

先定义枚举

 public static string GetEnumDesc(Enum en)          {              Type type = en.GetType();              MemberInfo[] memInfo = type.GetMember(en.ToString());if (memInfo != null && memInfo.Length > 0)              {object[] attrs = memInfo[0].GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.DisplayAttribute), false);if (attrs != null && attrs.Length > 0)return ((System.ComponentModel.DataAnnotations.DisplayAttribute)attrs[0]).Name;              }return en.ToString();          }

上面这个方法根据传入的枚举值通过反射获得display中name的值

 var name =GetEnumDesc(EumPoliticSstatus.PartyMember),

以上就是详解如何通过反射获得枚举的Display中name的值实例?的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: 通过
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:C#简单工厂模式是什么?

相关资讯