using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MECF.Framework.Common.Utilities
{
///
/// 枚举扩展获取Description
///
public static class EnumExtensions
{
public static string ToDescription(this T enumValue) where T : IConvertible
{
// 获取枚举值的名称
var name = Enum.GetName(typeof(T), enumValue);
// 获取字段信息
var field = typeof(T).GetField(name);
// 获取DescriptionAttribute
var attribute = field.GetCustomAttributes(typeof(DescriptionAttribute), false)
.FirstOrDefault() as DescriptionAttribute;
// 返回Description属性的值,如果不存在则返回null
return attribute?.Description;
}
}
}