Obtención de atributos de valor de Enum

Me gustaría saber si es posible obtener atributos de los valores de enumeración y no de la enumeración en sí. Por ejemplo, supongamos que tengo la siguiente enumeración:

using System.ComponentModel; // for DescriptionAttribute

enum FunkyAttributesEnum
{
    [Description("Name With Spaces1")]
    NameWithoutSpaces1,    
    [Description("Name With Spaces2")]
    NameWithoutSpaces2
}

Lo que quiero es el tipo de enumeración, producir 2 tuplas de valor de cadena de enumeración y su descripción.

El valor fue fácil:

Array values = System.Enum.GetValues(typeof(FunkyAttributesEnum));
foreach (int value in values)
    Tuple.Value = Enum.GetName(typeof(FunkyAttributesEnum), value);

Pero, ¿cómo obtengo el valor del atributo de descripción para completar Tuple.Desc? Se me ocurre cómo hacerlo si el atributo pertenece a la enumeración en sí, pero no sé cómo obtenerlo del valor de la enumeración.

Respuestas a la pregunta(19)

Su respuesta a la pregunta