C#中获取枚举的描述属性

Posted Hello Bug.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中获取枚举的描述属性相关的知识,希望对你有一定的参考价值。

using System;
using System.ComponentModel;
using System.Reflection;

/// <summary>
/// 枚举类扩展
/// </summary>
public static class EnumExt
{
    /// <summary>
    /// 转换为Description
    /// </summary>
    public static string ToDescription(this Enum e)
    {
        Type type = e.GetType();
        MemberInfo[] memberInfo = type.GetMember(e.ToString());
        object[] attributes = memberInfo[0].GetCustomAttributes(typeof(DescriptionAttribute), false);
        if (attributes != null && attributes.Length > 0)
        {
            return (attributes[0] as DescriptionAttribute).Description;
        }
        return e.ToString();
    }
}

 

以上是关于C#中获取枚举的描述属性的主要内容,如果未能解决你的问题,请参考以下文章

C# 根据数字值获取相应枚举

如何在 C# 中获取枚举项? [复制]

C# 枚举器和可枚举类型

如何在 Javascript 中获取 C# 枚举

在c#中获取所有枚举值的简单方法

如何从活动 CUDA 设备获取属性?