首頁 >後端開發 >C++ >如何從整數值中檢索C#枚舉的描述?

如何從整數值中檢索C#枚舉的描述?

Susan Sarandon
Susan Sarandon原創
2025-01-24 20:26:11445瀏覽

How to Retrieve a C# Enum's Description from its Integer Value?

在C#中從值檢索枚舉描述

在C#中,枚舉可以使用Description屬性進行修飾,允許您將有意義的描述與每個枚舉成員關聯。要檢索給定枚舉值的描述,您可以利用GetEnumDescription()方法,如下所示:

<code class="language-csharp">public enum MyEnum
{
    Name1 = 1,
    [Description("Here is another")]
    HereIsAnother = 2,
    [Description("Last one")]
    LastOne = 3
}

public static string GetEnumDescription(Enum value)
{
    FieldInfo fi = value.GetType().GetField(value.ToString());
    DescriptionAttribute[] attributes = fi.GetCustomAttributes(typeof(DescriptionAttribute), false) as DescriptionAttribute[];
    return attributes?.Any() == true ? attributes.First().Description : value.ToString();
}</code>

假設您想檢索特定枚舉值的描述,該值表示為整數(例如,1)。在將其傳遞給GetEnumDescription()方法之前,您可以使用強制轉換將此整數轉換為枚舉值:

<code class="language-csharp">int value = 1;
string description = GetEnumDescription((MyEnum)value);</code>

通過將整數強制轉換為相應的枚舉類型,您可以檢索對應枚舉成員的關聯描述。

以上是如何從整數值中檢索C#枚舉的描述?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn