ホームページ  >  記事  >  バックエンド開発  >  リフレクションを通じて列挙型 Display 内の name の値インスタンスを取得する方法の詳細な説明?

リフレクションを通じて列挙型 Display 内の name の値インスタンスを取得する方法の詳細な説明?

零下一度
零下一度オリジナル
2017-06-23 16:18:184065ブラウズ
         /// <summary>/// 政治面貌/// </summary>public enum EumPoliticSstatus
        {
            [Display(Name = "党员")]
            PartyMember = 1,
            [Display(Name = "团员")]
            Member = 2,
            [Display(Name = "群众")]
            Masses = 3,
            [Display(Name = "民主党派")]
            DemocraticParty = 4}

最初に列挙型を定義します

 public static string GetEnumDesc(Enum en)
        {
            Type type = en.GetType();
            MemberInfo[] memInfo = type.GetMember(en.ToString());if (memInfo != null && memInfo.Length > 0)
            {object[] attrs = memInfo[0].GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.DisplayAttribute), false);if (attrs != null && attrs.Length > 0)return ((System.ComponentModel.DataAnnotations.DisplayAttribute)attrs[0]).Name;
            }return en.ToString();
        }

上記のメソッドは、受信した列挙値に基づいてリフレクションを通じて表示内の名前の値を取得します

 var name =GetEnumDesc(EumPoliticSstatus.PartyMember),

以上がリフレクションを通じて列挙型 Display 内の name の値インスタンスを取得する方法の詳細な説明?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。