在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中文网其他相关文章!