/// <summary> Ottieni il nome enum in base al valore dell'enum /// </summary> <typeparam name="T"></typeparam> <param name="key"></param> /// <returns></returns> stringa statica pubblica GetEnumNameByKey<T>(int key) { nome stringaStr = stringa. Vuoto; tipo var = tipo(T); nameStr = Enum.GetName(tipo, chiave); ritorna nomeStr; }
/// <summary> Ottieni il nome enum in base al valore dell'enum /// </summary> <typeparam name="T"></typeparam> <param name="t"></param> /// <returns></returns> stringa statica pubblica GetEnumNameByKey<T>(T t) { nome stringaStr = stringa. Vuoto; tipo var = tipo(T); nameStr = Enum.GetName(type, t); ritorna nomeStr; }
/// <summary> Le stringhe vengono convertite in tipi enum /// </summary> <typeparam name="T"></typeparam> <param name="str"></param> <param name="t"></param> /// <returns></returns> bool statico privato StringConvertToEnum<T>(string str, out T t) dove T : new() { var obj = falso; t = nuovo T(); prova { t = (T)Enum. Parse(tipodi(T), str); obj = vero; } catch (eccezione ex) { obj = falso; }
Invia oggetti; }
/// <summary> Raccogli una raccolta di nomi enum /// </summary> <typeparam name="T"></typeparam> /// <returns></returns> stringa statica pubblica[] GetNamesArr<T>() { return Enum.GetNames(typeof(T)); }
/// <summary> Convertire enum in collezioni di dizionari /// </summary> <typeparam name="T"> enumerare i tipi</typeparam> /// <returns></returns> Dizionario statico pubblico<stringa, int> GetEnumDic<T>() {
Dizionario<stringa, int> resultList = nuovo Dizionario<stringa, int>(); tipo tipo = tipo(T); var strList = GetNamesArr<T>(). ToList(); foreach (chiave stringa in strList) { stringa val = Enum.Format(type, Enum.Parse(type, key), "d"); resultList.Add(key, int. Parse(val)); } return resultList; }
/// <summary> Ottieni una descrizione dei parametri /// </summary> <typeparam name="T"></typeparam> <param name="t"></param> /// <returns></returns> stringa statica pubblica <T>GetDescriptionByKey(T t) { var type = t.GetType(); FieldInfo campoInfo = tipo. GetField(GetEnumNameByKey<T>(t)); AttributoDescrizioneAttributo = Attributo.GetCustomAttribute(campoInfo, tipoof(DescriptionAttribute), falso) come AttributoDescrizione; var Description = attributo. Descrizione; ritorno Descrizione; }
|