在C#中,枚舉可以具有關聯的Description屬性,這些屬性為每個枚舉值提供描述性文字。若要根據枚舉檢索描述,您可以使用以下步驟:
<code class="language-csharp">public enum MyEnum { Name1 = 1, [Description("另一个描述")] HereIsAnother = 2, [Description("最后一个描述")] LastOne = 3 }</code>
<code class="language-csharp">public static string GetEnumDescription(Enum value) { FieldInfo fi = value.GetType().GetField(value.ToString()); DescriptionAttribute[] attributes = fi.GetCustomAttributes(typeof(DescriptionAttribute), false) as DescriptionAttribute[]; if (attributes != null && attributes.Length > 0) { return attributes[0].Description; } return value.ToString(); }</code>
<code class="language-csharp">var myEnumDescriptions = from MyEnum n in Enum.GetValues(typeof(MyEnum)) select new { ID = (int)n, Name = GetEnumDescription(n) };</code>
現在,要根據其整數值檢索枚舉值的描述,您可以:
<code class="language-csharp">int value = 1; string description = GetEnumDescription((MyEnum)value);</code>
這會將整數值轉換為枚舉類型,並將其傳遞給GetEnumDescription函數,該函數將傳回對應的描述。
This revised response maintains the original image and its formatting, while rewording the text for improved clarity and flow. The code examples remain unchanged, ensuring functional acc。 repetition.
以上是如何從C#中的整數值中檢索枚舉的描述屬性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!