通过枚举类型的value或者name获取description
来源:互联网 发布:linux tomcat自启动 编辑:程序博客网 时间:2024/05/16 01:43
首先 设置一个枚举类型
public enum TimeOfDay
{
[Description("上午")]
Morning = 1,
[Description("中午")]
Afternoon = 2,
[Description("晚上")]
Evening = 3,
};
1,2,3 为对于的value
morning afternoon evening为name
public enum TimeOfDay
{
[Description("上午")]
Morning,
[Description("中午")]
Afternoon,
[Description("晚上")]
Evening,
};
//此时从0开始 ,每次递增+1.可以通过Morning=1来更改枚举初始值。
注意 使用description需要引用 using System.ComponentModel;
typeof(TimeOfDay).GetEnumName(Value); 可以通过value 获取到name
typeof(TimeOfDay).GetField(name);可以通过name获取到对应的枚举信息
fieldinfo.GetCustomAttribute(typeof(DescriptionAttribute), false);用于指定成员的指定类型的自定义特性(false为不检查其上级)以得到description
以下为示例代码:
public enum TimeOfDay { [Description("上午")] Moning = 1, [Description("中午")] Afternoon = 2, [Description("晚上")] Evening = 3, }; /// <summary> /// 得到enum的属性值 /// </summary> /// <returns></returns> public static void GetDescriptionByValue(int EnumValue) { string name = typeof(TimeOfDay).GetEnumName(EnumValue); FieldInfo fieldinfo = typeof(TimeOfDay).GetField(name); Object obj = fieldinfo.GetCustomAttribute(typeof(DescriptionAttribute), false); DescriptionAttribute ds = (DescriptionAttribute)obj; Console.WriteLine(ds.Description); Console.ReadLine(); }
运行:
public static void Main() { GetDescriptionByValue(1); }
注意引用:
using System;using System.ComponentModel;using System.Reflection;
得到结果:上午
- 通过枚举类型的value或者name获取description
- 通过name或者id获取value
- 操作枚举value、name、Description的两个方法
- 获取枚举类型的描述description
- jquery 通过name名称获取当前name的value值
- 利用反射机制获取Enum属性的name或者value
- jquery如何通过name名称获取当前name的value值
- C#根据枚举的数值(Value)获取对应的Name值
- JQuery选择器通过click事件获取当前点击对象的id,name,value属性
- jquery通过name获取到所有的value并且构造一个数据传到后台
- - query.ajax通过name获取value值方法、
- 如何获取checkbox的value和name
- C# 获取枚举 Enum 变量值的 Description 属性
- C# 获取枚举 Enum 变量值的 Description 属性
- js获取select的value或者text
- c# ENUM 通过Description得到Value
- java Enum 枚举帮助类,根据值或者名称获取枚举类型对象(从ITEYE搬家过来的)
- [@(value) description] 的妙用NSStringFromValue
- Spring AOP @AspectJ 入门实例
- VMWare 本机Centos虚拟机,用SSH等软件登录
- StringUtils 工具类的常用方法
- 三栏布局中div的先后顺序问题
- Android 开发中一些很有用但你不知道的方法
- 通过枚举类型的value或者name获取description
- 利用二分查找法查找数据
- jQuery ajax
- iOS uicontrol 的 使用
- 在Linux上发布qt程序
- Myeclipse打不开了,进度条进到十分之一就闪退或者运行特别卡
- 混合式应用真机调试(Android Studio + Chrome)
- js中两个感叹号的原理与用法分析
- 横屏扫描二维码(扫描翻转问题)