获取enum的Description

using System;
using System.Reflection;
using System.ComponentModel;
using System.Collections.Specialized; 
    class Program
    {
        static void Main(string[] args)
        {
            Type type = typeof(DescriptionAttribute);
            foreach (FieldInfo fi in typeof(CustomerRankType).GetFields())
            {
                object[] arr = fi.GetCustomAttributes(type, true);
                if (arr.Length > 0)
                {
                    Console.WriteLine(((DescriptionAttribute)arr[0]).Description);
                }
            }
Console.ReadLine();
        }
    }
    /// <summary>
    /// 用户等级枚举
    /// </summary>
    [Serializable]
    public enum CustomerRankType
    {
        [Description("游客")]
        
        Unknown = 0,
        [Description("初级会员")]
        
        JuniorMember = 1,
        
        [Description("青铜会员")]
        BronzeMember = 2,
        
        [Description("白银会员")]
        SilverMember = 3,
        
        [Description("黄金会员")]
        GoldMember = 4,
        
        [Description("钻石会员")]
        DiamondMember = 5,
        
        [Description("皇冠会员")]
        CrownMember = 6,
        
        [Description("至尊会员")]
        EggEmperor = 7
    }
作者:Bober Song
出处:http://bober.cnblogs.com/
衣冠勤售: http://www.YiGuanShou.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted @ 2011-11-21 15:14 衣冠勤售 阅读(19) 评论(1) 编辑 收藏

 回复 引用 查看   
#1楼[楼主] 2011-11-21 15:16 大力bober      
string desc=GetEnumDescription<Filter>(Filter.Public); //得到Filter(enum)中,为Public 所定义的描述信息.
作者:Bober Song
出处:http://bober.cnblogs.com/
衣冠勤售:http://www.YiGuanShou.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。