C# 获取Enum 描述和值集合
//获取枚举的值
public static IEnumerable<T> GetEnumValues<T>() where T : struct
{
T[] values = (T[])Enum.GetValues(typeof(T)); foreach (var itemValue in values)
{
if (Convert.ToInt32(itemValue) != )
{
yield return itemValue;
}
}
}
Dictionary<int, string> dicRet = new Dictionary<int, string>();
//获取Enums的值
var resonlist = EnumsHelper.GetEnumValues<MakeSureComplaintReson>(); foreach (var item in resonlist)
{
dicRet.Add((int)item, item.GetDescription());
}
return dicRet;
    public enum MakeSureComplaintReson
    {
        [Description("a")]
        reson1 = ,
        [Description("b")]
        reson2 = ,
        [Description("c")]
        reson3 = ,
        [Description("其它")]
        reson9 =
    }
最终得到的结果:
[{1,'a'},{2,'b'},{3,'c'},{9,'其它'}]
C# 获取Enum 描述和值集合的更多相关文章
- 通过重写 class 的 ToString() 来简化获取 enum 的 DescriptionAttribute 值
		通过重写 class 的 ToString() 来简化获取 enum 的 DescriptionAttribute 值 目录 一.常见的 enum 类型 二.演变:class 版本的 enum 类型 ... 
- .Net反射-两种方式获取Enum中的值
		public enum EJobType { 客服 = , 业务员 = , 财务 = , 经理 = } Type jobType = typeof(EJobType); 方式1: Array enum ... 
- 获取Enum枚举值描述的几法方法
		原文:获取Enum枚举值描述的几法方法 1.定义枚举时直接用中文 由于VS对中文支持的很不错,所以很多程序员都采用了此方案. 缺点:1.不适合多语言 2.感觉不太完美,毕竟大部分程序员大部分代码都使用 ... 
- 根据获取Enum名获取对应的值通用方法(仅限值为int的)
		/// <summary> /// 获取枚举对应的值 /// </summary> /// <typeparam name="T">枚举类型&l ... 
- 【转载】 C#使用Select方法快速获取List集合集合中某个属性的所有值集合
		在C#的List集合操作或者数组操作中,有时候我们需要获取到List集合元素中所有的对象的某个属性,然后存放到一个数组集合中,此时就可以使用到List集合以及数组的扩展方法Select方法快速实现获取 ... 
- Enum枚举类使用集合
		1.使用扩展方法使用枚举值对于的Description属性值 public static class EnumExtenstion { public static string GetDescript ... 
- (js描述的)数据结构[集合结构](6)
		(js描述的)数据结构[集合结构](6) 一.集合结构特点 1.集合中的元素不能重复. 2.集合是无序的. 二.集合的代码实现 function Set() { this.items = {} //1 ... 
- jquery attr()方法 添加,修改,获取对象的属性值。
		jquery attr()方法 添加,修改,获取对象的属性值. jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到 ... 
- C# 中的枚举类型 enum (属于值类型)
		原文 C# 中的枚举类型 enum (属于值类型) C# 支持两种特殊的值类型:枚举和结构. 声明枚举:声明时要声明所有可能的值. using System; using System.Collect ... 
随机推荐
- 远程连接阿里云服务器ping不通ip解决方案
			搭建了阿里云服务器,发现本地ping不通,查看半天才发现,原来是在阿里云上的安全组少了些东西. 在出入方向上新建一个安全组,就可以搞定了. 
- 【转载】文件上传Expected MultipartHttpServletRequest: is a MultipartResolver错误解决
			引入包commons-fileupload-*.jar,版本号可以根据项目情况调整: 在spring mvc配置文件中增加配置,文件大小限制可根据项目情况调整: <!-- 上传文件拦截,设置最大 ... 
- c++/c DEBUG宏
			#cat log_debug.h #ifdef DEBUG int log_debug(const char *format, ...); #else int log_debug(const char ... 
- idea和eclipse互相导入方法
			1.eclipse maven项目导入idea 只需要在pom.xml文件中加入如下图 为了加载项目里的一些配置文件(例如.xml和.properties文件) 2.idea maven 项目导入ec ... 
- _initialize() 区别 __construct()
			_initialize()方法是在任何方法执行之前,都要执行的,当然也包括 __construct构造函数. 也就是说如果存在_initialize()函数,调用对象的任何方法都会导致_initial ... 
- ASP.NET误人子弟教程:在MVC下如何返回图片
			这几天忙着一些小事,也没有写什么了,今天,我们来玩一个比较简单的东东.就是在MVC下如何返回图片,相信,在传统WebForm下,大家都晓得怎么弄,方也不限于一种,但是,在架构较为严格的MVC里面,刚开 ... 
- Flask-SQLAlchemy中解决1366报错
			会报下面这个1366的错 安装MySQL驱动(我升级过Python,所以要再装一遍) 本想安装MySQL官方驱动mysql-connector-python的,然而官方目前只支持到3.4 我又懒,所以 ... 
- GeoTrust 企业(OV)型 SSL证书
			GeoTrust True BusinessID SSL证书属于企业验证(OV)级别的SSL证书,验证域名所有权,验证企业单位信息,提供40位/56位/128位,最高支持256位自适应加密,被20 ... 
- hdu_1040_As Easy As A+B_201308191751
			As Easy As A+B Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)To ... 
- JDK工具jstatd用法详解(转)
			jstatd,即虚拟机的jstat守护进程,主要用于监控JVM的创建与终止,并提供一个接口允许远程监控工具依附到在本地主机上运行的JVM. 用法摘要 jstatd [ options ] option ... 
