Uzyskanie atrybutów wartości Enum
Chciałbym wiedzieć, czy możliwe jest uzyskanie atrybutów wartości wyliczeniowych, a nie samego wyliczenia? Załóżmy na przykład, że mam następujące wyliczenie:
using System.ComponentModel; // for DescriptionAttribute
enum FunkyAttributesEnum
{
[Description("Name With Spaces1")]
NameWithoutSpaces1,
[Description("Name With Spaces2")]
NameWithoutSpaces2
}
To, czego chcę, to typ enum, 2 krotki wartości ciągu wyliczeniowego i jego opis.
Wartość była łatwa:
Array values = System.Enum.GetValues(typeof(FunkyAttributesEnum));
foreach (int value in values)
Tuple.Value = Enum.GetName(typeof(FunkyAttributesEnum), value);
Ale jak uzyskać wartość atrybutu description, aby wypełnić Tuple.Desc? Mogę pomyśleć, jak to zrobić, jeśli atrybut należy do samego wyliczenia, ale nie wiem, jak go uzyskać z wartości wyliczenia.