zoukankan      html  css  js  c++  java
  • C#枚举描述获取

     public static class EnumExtension
        {
            public static string GetDescription(this Enum value)
            {
                FieldInfo field = value.GetType().GetField(value.ToString());
                DescriptionAttribute attribute = Attribute.GetCustomAttribute(field, typeof(DescriptionAttribute)) as DescriptionAttribute;

                return attribute == null ? value.ToString() : attribute.Description;
            }

            //public static IEnumerable<EnumItem> GetDictionary<TEnum>(this TEnum tEnum)
            //    where TEnum : struct
            //{
            //    return Enum.GetValues(typeof(TEnum)).OfType<Enum>()
            //        .Select(x => new EnumItem
            //        {
            //            Key = Convert.ToInt32(x),
            //            Value = x.ToString(),
            //            Description = x.GetDescription()
            //        });
            //}

            public static IEnumerable<EnumItem> GetDictionary(Type tEnum)
            {
                return Enum.GetValues(tEnum).OfType<Enum>()
                    .Select(x => new EnumItem
                    {
                        Key = Convert.ToInt32(x),
                        Value = x.ToString(),
                        Description = x.GetDescription()
                    });
            }
        }

  • 相关阅读:
    LowerUDF
    第二次c++作业总结
    Java多线程详述
    OutOfMemoryError异常
    Java虚拟机内存区域
    HIS(LIS、PACS、RIS、EMR)系统解决方案
    如何用PLSQL Developer连接远程的ORACLE数据库
    iBATIS与Hibernate的异同
    Java复习_static用例_单例模式_饿汉式
    Java复习_static静态方法(类方法)
  • 原文地址:https://www.cnblogs.com/guokun/p/5843421.html
Copyright © 2011-2022 走看看