根据类型获取枚举中的文字
比如数据库里存的是数字,从枚举中获取相应的文字描述
公共方法
public static string GetEnumDesc<T>(T Enumtype)
{
if (Enumtype == null) throw new ArgumentNullException("Enumtype");
if (!Enumtype.GetType().IsEnum) throw new Exception("参数类型不正确");
return ((DescriptionAttribute)Enumtype.GetType().GetField(Enumtype.ToString()).GetCustomAttributes(typeof(DescriptionAttribute), false)[0]).Description;
}
实体中定义
public Enum.AccountValidationType AuthType { get; set; }
public string ValidationTypeStr { get; set; }
枚举类
public enum AccountValidationType
{
[Description("注册认证(创建网络)")]
Validation_A = 0,
[Description("强制认证(管理员要求强制认证)")]
Validation_B = 1,
[Description("邀请认证(同域名)")]
Validation_C = 2
}
业务中写
validation.DescribeTypeStr = MDManage.Framework.Common.GetEnumDesc<AccountDescribeType>(validation.AuthTypeDesc);