C# 열거형에 친숙한 이름을 사용할 수 있나요?
알다시피 C# 열거형 멤버는 밑줄을 구분 기호로 사용하여 리터럴 이름만 가질 수 있습니다. 그러나 열거형에 "친숙한 이름"을 할당하는 방법이 있습니다.
해결책: 설명 속성
DescriptionAttribute
속성을 사용하여 각 열거형 멤버에 대해 보다 친숙한 설명을 제공할 수 있습니다. 설명 검색을 단순화하는 확장 방법은 다음과 같습니다.
<code class="language-csharp">public static string GetDescription(this Enum value) { Type type = value.GetType(); string name = Enum.GetName(type, value); FieldInfo field = type.GetField(name); DescriptionAttribute attr = Attribute.GetCustomAttribute(field, typeof(DescriptionAttribute)) as DescriptionAttribute; return attr != null ? attr.Description : null; }</code>
사용법:
각 열거형 멤버에 DescriptionAttribute
를 적용하고 원하는 친숙한 이름을 제공합니다.
<code class="language-csharp">public enum MyEnum { [Description("此名称有效")] ThisNameWorks, [Description("此名称无效")] ThisNameDoesntWork, [Description("这个也不行")] NeitherDoesThis }</code>
친숙한 이름을 검색하려면:
<code class="language-csharp">MyEnum x = MyEnum.ThisNameWorks; string description = x.GetDescription();</code>
위 내용은 C#에서 Enum 멤버에 친숙한 이름을 할당할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!