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.

questionAnswers(19)

yourAnswerToTheQuestion