/// <summary> Hanki enum-nimi enumin arvon perusteella /// </summary> <typeparam name="T"></typeparam> <param name="avain"></param> /// <returns></returns> julkinen staattinen merkkijono GetEnumNameByKey<T>(int key) { merkkijonon nimiStr = merkkijono. Tyhjä; var type = typeof(T); nameStr = Enum.GetName(type, key); return nameStr; }
/// <summary> Hanki enum-nimi enumin arvon perusteella /// </summary> <typeparam name="T"></typeparam> <param name="t"></param> /// <returns></returns> julkinen staattinen merkkijono GetEnumNameByKey<T>(T t) { merkkijonon nimiStr = merkkijono. Tyhjä; var type = typeof(T); nameStr = Enum.GetName(type, t); return nameStr; }
/// <summary> Merkkijonot muunnetaan enum-tyypeiksi /// </summary> <typeparam name="T"></typeparam> <param name="str"></param> <param name="t"></param> /// <returns></returns> private static bool StringConvertToEnum<T>(string str, out T t) missä T : new() { var obj = epätosi; t = uusi T(); yritä { t = (T)Enum.Parse(typeof(T), str); obj = tosi; } catch (poikkeus esim.) { obj = epätosi; }
return obj; }
/// <summary> Hanki kokoelma enum-nimiä /// </summary> <typeparam name="T"></typeparam> /// <returns></returns> julkinen staattinen merkkijono[] GetNamesArr<T>() { return Enum.GetNames(typeof(T)); }
/// <summary> Muunna enumit sanakirjakokoelmiksi /// </summary> <typeparam name="T"> luettele tyypit</typeparam> /// <returns></returns> public static Dictionary<string, int> GetEnumDic<T>() {
Sanakirja<merkkijono, int> resultList = uusi sanakirja<merkkijono, int>(); Tyyppityyppi = tyyppi(T); var strList = GetNamesArr<T>(). ToList(); foreach (string-avain strListissä) { merkkijono val = Enum.Format(type, Enum.Parse(type, key), "d"); resultList.Add(key, int. Parse(val)); } return resultList; }
/// <summary> Hanki kuvaus parametreista /// </summary> <typeparam name="T"></typeparam> <param name="t"></param> /// <returns></returns> julkinen staattinen merkkijono GetDescriptionByKey<T>(T t) { var type = t.GetType(); FieldInfo fieldInfo = tyyppi. GetField(GetEnumNameByKey<T>(t)); DescriptionAttribute attribuutti = Attribute.GetCustomAttribute(fieldInfo, typeof(DescriptionAttribute), false) muodossa DescriptionAttribute; var Kuvaus = attribuutti. Kuvaus; paluu Kuvaus; }
|