using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Reflection;
public static class EnumHelper<T>
{
public static string GetDescription(Enum en)
{
Type type = en.GetType();
MemberInfo[] memInfo = type.GetMember(en.ToString());
if (memInfo != null && memInfo.Length > 0)
{
object[] attrs = memInfo[0].GetCustomAttributes(typeof(DescriptionAttribute), false);
if (attrs != null && attrs.Length > 0)
{
return ((DescriptionAttribute)attrs[0]).Description;
}
}
return en.ToString();
}
public static T Parse(string value)
{
return (T)Enum.Parse(typeof(T), value);
}
public static IList<T> GetValues()
{
IList<T> list = new List<T>();
foreach (object value in Enum.GetValues(typeof(T)))
{
list.Add((T)value);
}
return list;
}
public static Dictionary<T, string> GetValueDescriptionDictionary()
{
Dictionary<T, string> dictionary = new Dictionary<T, string>();
foreach (object value in Enum.GetValues(typeof(T)))
{
dictionary.Add((T)value, GetDescription((Enum)value));
}
return dictionary;
}
}
分享到:
相关推荐
功能:枚举操作类,枚举类型创建,转换 * 2. 作者:杨磊 * 3. 创建日期:2008-1-30 * 4. 最后修改日期:2008-11-10 **/ using System; using System.Collections.Generic; using System.Text; using System....
通过枚举反向给实体类赋值工具类,减少表单提交时通过request.getParameter(name)方式获取提交值的重复操作
主要介绍了Java手动方式创建枚举类,结合实例形式分析了java创建枚举类的方法及相关操作技巧,需要的朋友可以参考下
java枚举小例子,简单了解枚举的用法,适合初学者使用。
Nt系统操作系统用户:枚举、添加、删除谁有获取win2000域用户的代码?
如果要在 QML使用 C++中定义的类型,有些数据类型是是可以直接使用的,如常见的 int,但是还有一些相对特殊的类型就需要做些特定的操作才可以使用了。 博客地址:...
本文档为自己手动书写样例,涉及到java项目中经常用到的枚举类型,使用枚举类型有利于快速引起区分对应字典键值对
1、实现系统的所有线程枚举 2、实现windows的重启、关机API操作 3、对相关注册表操作的封装实现类 4、实现对农历转换类 5、托盘图片功能实现。
主要介绍了java枚举类的属性、方法和构造方法应用,结合实例形式分析了java枚举类的定义、构造及相关应用操作技巧,需要的朋友可以参考下
易语言SQLite3数据库操作类模块源码,SQLite3数据库操作类模块,取数据库句柄,置数据库句柄,是否已连接,连接,关闭,置密码,错误代码,最后错误,引擎版本,设超时时间,执行SQL,取表内容,枚举表,枚举索引,枚举视图,枚举...
AutoCAD基础操作类,简单封装了AutoCAD实例,关闭、退出、线条样式枚举
易语言工具模块之网页操作类2 集成很多命令,比1好多了,大家看那看那
易语言得力注册表操作类模块源码,得力注册表操作类模块,取根句柄,取根名称,取项目句柄,取目标键名,取字节集文本,Ansi2Unicode,Unicode2Ansi,汇编调用子程序,是否64位,是否存在,导入文件,导入文本,删除,枚举,枚举子键...
07.枚举操作辅助类 MyEnumHelper 08.Excel操作辅助类(无需VBA引用) MyExcelHelper.cs 09.打开、保存文件对话框操作辅助类 MyFileDialogHelper.cs 10.常用文件操作辅助类 MyFileHelper.cs 11.键盘操作辅助类,提供...
主要介绍了Java包含抽象方法的枚举类,结合实例形式分析了Java包含抽象方法的枚举类实现方法与相关操作技巧,需要的朋友可以参考下
10. Excel操作类 11. FTP操作类 12. H5-微信 13. Html操作类 14. INI文件读写类 15. IP辅助类 16. Javascript 17. Json 18. JSON操作 19. JS操作 20. Lib 21. Mime 22. Net 23. NPOI 24. obj 25. ...
,加密解密,压缩解压缩,各种验证帮助类,图片,图片操作类,图片验证码,处理多媒体的公共类,处理枚举类,字符串,对象转换处理,帮助文档,序列化,异步线程,弹出消息类 ,数据展示控件绑定数据类,文件操作类,日历,日志,时间戳...
在项目中需要把枚举填充到下拉框中,所以使用统一的方法实现,测试代码如下,需要的朋友可以参考下