using System.ComponentModel;
using System.Reflection;
namespace MEAS.Common
{
public class EnumHelper
{
//定义一个用于保存静态变量的实例
private static EnumHelper instance = null;
//定义一个保证线程同步的标识
private static readonly object locker = new object();
//构造函数为私有,使外界不能创建该类的实例
private EnumHelper() { }
public static EnumHelper Instance
{
get
{
if (instance == null)
{
lock (locker)
{
if (instance == null) instance = new EnumHelper();
}
}
return instance;
}
}
public string GetEnumDescription(System.Enum enumValue)
{
string value = enumValue.ToString();
FieldInfo field = enumValue.GetType().GetField(value);
object[] objs = field.GetCustomAttributes(typeof(DescriptionAttribute), false); //获取描述属性
if (objs == null || objs.Length == 0) //当描述属性没有时,直接返回名称
return value;
DescriptionAttribute descriptionAttribute = (DescriptionAttribute)objs[0];
return descriptionAttribute.Description;
}
}
}
博客内容主要用于日常学习记录,内容比较随意,如有问题,还需谅解!!!

浙公网安备 33010602011771号