本文摘自PHP中文网,作者零下一度,侵删。
1 2 3 4 5 6 7 8 9 10 | {
[Display(Name = "党员" )]
PartyMember = 1,
[Display(Name = "团员" )]
Member = 2,
[Display(Name = "群众" )]
Masses = 3,
[Display(Name = "民主党派" )]
DemocraticParty = 4}
|
先定义枚举
1 2 3 4 5 6 7 | 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的值
1 | var name =GetEnumDesc(EumPoliticSstatus.PartyMember),
|
以上就是详解如何通过反射获得枚举的Display中name的值实例?的详细内容!
相关阅读 >>
asp.net反射简单应用实例代码
直接调用vs反射调用实例教程
总结反射技术的实际应用。
asp.net利用反射实现给model类赋值的示例代码分析
c#如何枚举枚举
c#使用反射来实现对象的深度复制的示例代码分享
详解如何通过反射获得枚举的Display中name的值实例?
.net中非常有用的特性--反射
实例介绍asp.net项目开发中枚举的使用
反射 (c#)
更多相关阅读请进入《Display》频道 >>
清华大学出版社
作者:[美]克里斯琴·内格尔(Christian Nagel)著。出版时间:2019年3月。
转载请注明出处:木庄网络博客 » 详解如何通过反射获得枚举的Display中name的值实例?