枚举是 C 语言中的一种基本数据类型,它可以让数据更简洁,更易读。
枚举语法定义格式为:
enum 枚举名 {枚举元素1,枚举元素2,……};
首先我们来定义一个状态的枚举类型:
定义枚举
public enum StatusTypeEnum { [Description("正常")] Spring = 1, [Description("关闭")] Summer = 2, [Description("不正常")] Autumn = 3, [Description("锁定")] Winter = 4 }
在实际开发的很多项目中 都会经常遇到这个枚举类型:
使用枚举为了提供程序的可读性的,加快开始效率。
那么怎么来使用呢?
这个时候我们就需要自己写一个通用的帮助类 用来解析这个枚举类型:
帮助类的代码:
public static string GetEnumDesc<T>(int value) { var enumName = Enum.GetName(typeof(T), value); string result = string.Empty; if (enumName==null) { result = "值超出范围" + value; }else { System.Reflection.FieldInfo field = typeof(T).GetField(enumName); if (field != null) { object[] objs = field.GetCustomAttributes(typeof(System.ComponentModel.DescriptionAttribute), false); if (objs == null || objs.Length == 0) result = enumName; else { System.ComponentModel.DescriptionAttribute da = (System.ComponentModel.DescriptionAttribute)objs[0]; result = da.Description; } } else { result = "为找到"+enumName; } } return result; }
这个通用的帮助类就这样写好啦 。
怎么去使用这个帮助类呢?
直接调用这个帮助类就可以得到解析的描述哟。
GetEnumDesc<StatusTypeEnum>(1);
这样返回的值就是 :正常
这样的一个枚举就能完美使用啦。
只要把帮助类这个解析写成通用的 所有的项目以后都可以使用这个方法。
很方便快捷 大大的提高开发效率。很好用哟。
完整的源码已经上传到CYBLOG -资源中:https://cyimt.net/Download/Download?Down=051538157902