Heim >Backend-Entwicklung >C#.Net-Tutorial >Detaillierte Erklärung, wie man durch Reflektion die Wertinstanz von name in der aufgezählten Anzeige erhält?
/// <summary>/// 政治面貌/// </summary>public enum EumPoliticSstatus { [Display(Name = "党员")] PartyMember = 1, [Display(Name = "团员")] Member = 2, [Display(Name = "群众")] Masses = 3, [Display(Name = "民主党派")] DemocraticParty = 4}
Definieren Sie zunächst die Aufzählung
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(); }
Die obige Methode ermittelt den Wert des Namens in der Anzeige durch Reflexion basierend auf der eingehenden Aufzählung Wert
var name =GetEnumDesc(EumPoliticSstatus.PartyMember),
Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung, wie man durch Reflektion die Wertinstanz von name in der aufgezählten Anzeige erhält?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!