/// <summary> /// 将枚举类型转换为List /// </summary> /// <param name="type"></param> /// <returns></returns> public static IEnumerable <EnumResponse> TryToList(this Type type) { var result = new List <EnumResponse>(); foreach (var item in Enum.GetValues(type)) { var response = new EnumResponse { Key = item.ToString(), Value = Convert.ToInt32(item) }; var objArray = item.GetType().GetField(item.ToString()).GetCustomAttributes(typeof(DescriptionAttribute), true); if (objArray.Any()) { response.Description = (objArray.First() as DescriptionAttribute).Description; } result.Add(response); } return(result); }
/// <summary> /// 将 Enum 转换为 List /// </summary> /// <typeparam name="T"></typeparam> /// <returns></returns> public static IList <EnumResponse> EnumToList <T>() where T : Enum { var result = new List <EnumResponse>(); foreach (var item in Enum.GetValues(typeof(T))) { var dto = new EnumResponse { Key = item.ToString(), Value = Convert.ToInt32(item) }; var objArray = item.GetType().GetField(item.ToString()).GetCustomAttributes(typeof(DescriptionAttribute), true); if (objArray.Any()) { dto.Description = (objArray.First() as DescriptionAttribute).Description; } result.Add(dto); } return(result); }
public EnumBusiness(EnumResponse enumResponse, ILogger <EnumBusiness> logger) { _enumResponse = enumResponse; _logger = logger; }