In der C#-Programmierung werden Aufzählungen verwendet, um einen festen Satz von Werten zu definieren. Aufzählungsvariablen können nur die in der Aufzählung definierten Werte annehmen. Allerdings sind Aufzählungselemente standardmäßig nur numerische Werte, was in manchen Fällen nicht intuitiv genug ist. Die Frage ist also, wie man der Aufzählung einen benutzerfreundlicheren Namen geben kann.
Um Aufzählungsmitgliedern verständlichere Namen zu geben, können Sie das Attribut „Beschreibung“ verwenden. Dadurch kann für jedes Aufzählungselement eine beschreibende Textzeichenfolge angegeben werden. Diese Beschreibung kann dann mit einer Erweiterungsmethode abgerufen werden:
<code class="language-csharp">public static string GetDescription(this Enum value) { Type type = value.GetType(); string name = Enum.GetName(type, value); if (name != null) { FieldInfo field = type.GetField(name); if (field != null) { DescriptionAttribute attr = Attribute.GetCustomAttribute(field, typeof(DescriptionAttribute)) as DescriptionAttribute; if (attr != null) { return attr.Description; } } } return null; // 或抛出异常,视情况而定 }</code>
So verwenden Sie es:
<code class="language-csharp">public enum MyEnum { [Description("Foo 的描述")] Foo, [Description("Bar 的描述")] Bar } MyEnum x = MyEnum.Foo; string description = x.GetDescription();</code>
Das obige ist der detaillierte Inhalt vonWie kann ich C#-Enums benutzerfreundliche Namen geben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!