枚举是 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






赞









