zoukankan      html  css  js  c++  java
  • 反射:获取枚举类型的Name,Value,Description

    [Obsolete("请使用新的方法XXX")] //使用Obsolete特性来告诉使用者这是一个过期的方法 
            private static void Test()
            {
                Type t = typeof(ApprovalStatus);
                var fields = t.GetFields();
                foreach (var item in fields)
                {
                    if (!item.IsSpecialName)
                    {
                        var attr = item.GetCustomAttribute(typeof(DescriptionAttribute), false);
                        string attribute = "";
                        if (attr != null)
                            attribute = ((DescriptionAttribute)attr).Description;
                        Console.WriteLine($"Description:{attribute}	Name:{item.Name}	Value:{item.GetRawConstantValue()}");
                    }
                }
    
                Console.ReadKey();
            }
      
    
      
    

     枚举类:

        /// <summary>
        /// 表示审批状态的枚举类
        /// </summary>
        enum ApprovalStatus
        {
            /// <summary>
            /// ?
            /// </summary>
            [Description("")]
            NoUse = 0,
    
            /// <summary>
            /// 未提交
            /// </summary>
            [Description("未提交")]
            NoSubmit = 1,
    
            /// <summary>
            /// 审核中
            /// </summary>
            [Description("审核中")]
            OnApprovaling = 2,
    
            /// <summary>
            /// 待生效
            /// </summary>
            [Description("待生效")]
            OnEffecting = 3,
    
            /// <summary>
            /// 已生效
            /// </summary>
            [Description("已生效")]
            Effected = 4,
    
            /// <summary>
            /// 拒绝
            /// </summary>
            [Description("拒绝")]
            Reject = 5,
    
            /// <summary>
            /// 撤销
            /// </summary>
            [Description("撤销")]
            Undo = 6
        } 

     效果:

  • 相关阅读:
    3.Java入门程序,在dos下运行Hello World
    2.javase环境的搭建
    1.Java语言的简介
    常见的dos命令
    计算机基础
    网络工程师-个人笔记三
    网络工程个人笔记二
    网络工程师个人笔记一
    Vuex
    cookie session sessionStorage localStorage
  • 原文地址:https://www.cnblogs.com/dbycl/p/6726693.html
Copyright © 2011-2022 走看看