枚举+Description特性 实现 本地化

85 篇文章 0 订阅

事情是这样的,为拿到数据之后,是枚举值,然后需要插入到excel表格中,需要转化为中文。

前端的话有管道可以很容易的处理数据,后端的话查到使用特性来避免使用本地化。

直接给枚举值定义一个描述特性,拿的时候通过反射直接拿描述的内容。

class Program
    {
        static void Main(string[] args)
        {
          ToDescription((DB)(1));
        }


     
    }


 
       public enum  DB{
           [Description("读")]
          write=1,
           [Description("写")]
           read=2
       }

       public static class MyException
       {
           /// <summary>
           /// 获取枚举类型的描述
           /// </summary>
           /// <param name="enumeration"></param>
           /// <returns></returns>
           public static string ToDescription(Enum enumeration)
           {
               Type type = enumeration.GetType();
               MemberInfo[] memInfo = type.GetMember(enumeration.ToString());
               if (null != memInfo && memInfo.Length > 0)
               {
                   object[] attrs = memInfo[0].GetCustomAttributes(typeof(DescriptionAttribute), false);
                   if (null != attrs && attrs.Length > 0)
                       return ((DescriptionAttribute)attrs[0]).Description;
               }
               return enumeration.ToString();
           }
          
       }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

董厂长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值