zoukankan      html  css  js  c++  java
  • C# ENUM 字符串输出功能

    public enum MeasurementType
    {
        Each,
    
        [DisplayText("Lineal Metres")]
        LinealMetre,
    
        [DisplayText("Square Metres")]
        SquareMetre,
    
        [DisplayText("Cubic Metres")]
        CubicMetre,
    
        [DisplayText("Per 1000")]
        Per1000,
    
        Other
    }
    
    
    public class DisplayText : Attribute
    {
    
        public DisplayText(string Text)
        {
            this.text = Text;
        }
    
    
        private string text;
    
    
        public string Text
        {
            get { return text; }
            set { text = value; }
        }
    }

    Then, used an extension method like this:

        public static string ToDescription(this Enum en)
        {
    
            Type type = en.GetType();
    
            MemberInfo[] memInfo = type.GetMember(en.ToString());
    
            if (memInfo != null && memInfo.Length > 0)
            {
    
                object[] attrs = memInfo[0].GetCustomAttributes(
                                              typeof(DisplayText),
    
                                              false);
    
                if (attrs != null && attrs.Length > 0)
    
                    return ((DisplayText)attrs[0]).Text;
    
            }
    
            return en.ToString();
    
        }

    You can then just call

    myEnum.ToDescription()
  • 相关阅读:
    js-20170816-Date对象
    js-20170804-Math对象
    js-20170619-string对象
    微信web开发者工具
    前端开发指南
    接口调试工具DHC
    CSS预处理器
    Weex
    Vue.js
    hbuilder
  • 原文地址:https://www.cnblogs.com/xpvincent/p/10015718.html
Copyright © 2011-2022 走看看