public static string GetDescription <TEnum>(TEnum enumValue) { Type t = enumValue.GetType(); PosValueAttribute attr = t.GetField(Enum.GetName(t, enumValue)).GetCustomAttributes(typeof(PosValueAttribute), false).OfType <PosValueAttribute>().FirstOrDefault(); return((attr == null) ? null : attr.Description); }
public static PartOfSpeech GetPartOfSpeech <TEnum>(TEnum enumValue) where TEnum : struct, IComparable, IFormattable, IConvertible { Type t = enumValue.GetType(); PosValueAttribute attr = t.GetField(Enum.GetName(t, enumValue)).GetCustomAttributes(typeof(PosValueAttribute), false).OfType <PosValueAttribute>().FirstOrDefault(); return((attr == null) ? default(PartOfSpeech) : attr.PartOfSpeech); }