提高枚举可读性:使用自定义描述
之前的讨论涉及为枚举值分配描述性名称。 详细说明:
虽然示例枚举包含带有空格和句点的值,但枚举名称必须遵循特定的命名约定 - 通常是没有标点符号或空格的单个单词。
要获得更用户友好的枚举值,请利用 Description
属性。此属性允许您向每个枚举成员添加描述性字符串,从而显着提高代码清晰度。
这是一个有用的扩展方法,可以轻松检索这些描述:
<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>
此方法简化了对任何枚举值的描述的访问。 请参阅下面的示例:
<code class="language-csharp">public enum MyEnum { [Description("Description for Foo")] Foo, [Description("Description for Bar")] Bar } MyEnum x = MyEnum.Foo; string description = x.GetDescription();</code>
以上是如何通过使用自定义描述来提高枚举可读性?的详细内容。更多信息请关注PHP中文网其他相关文章!