/// <summary> /// Procura o elemento pelo conteúdo do atributo "Description" /// </summary> /// <param name="value">Valor a verificar</param> public static T?FindByEnumDescription <T>(this string value) where T : struct { int iResultado; var dicEnum = FuncoesGerais.ObterChaveValorEnum <T>(); return(dicEnum.TryGetValue(value, out iResultado) ? iResultado.ToEnumValue <T>() : new T?()); }
/// <summary> /// Converte os elementos da enum informada para uma Lista /// </summary> /// <param name="origem">Item da enum para obter os itens e converter</param> public static List <T> ToList <T>(this Enum origem) where T : struct { return(FuncoesGerais.ObterChaveValorEnum <T>().Values.Select(i => i.ToEnumValue <T>()).ToList()); }
/// <summary> /// <para>Converte os elementos da enum informada para um Dicionário com os itens, onde: Key->Atributo Description, Value->int do valor da enum.</para> /// <para>Ver também Trans.<seealso cref="Trans.ObterChaveValorEnum{T}"/></para> /// </summary> /// <param name="origem">tem da enum para obter os itens e converter</param> public static Dictionary <string, int> ToDictionary <T>(this Enum origem) { return(FuncoesGerais.ObterChaveValorEnum <T>()); }