65.9K
CodeProject is changing. Read more.
Home

TIP: Descriptions for enum values

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.86/5 (4 votes)

Sep 24, 2010

CPOL
viewsIcon

5480

You could also make an extension method...public static class EnumExtensions{ public static string Description(this Enum e) { return e.GetType().GetField(e.ToString()).GetCustomAttributes(typeof(DescriptionAttribute), false) as DescriptionAttribute[])[0].Description; ...

You could also make an extension method...
public static class EnumExtensions
{
    public static string Description(this Enum e)
    {
        return e.GetType().GetField(e.ToString()).GetCustomAttributes(typeof(DescriptionAttribute), false) as DescriptionAttribute[])[0].Description;
    }
}
Then the code to use is as simple as:
public enum SampleEnum
{
    [Description("Value 1")]
    One,
    [Description("Value 2")]
    Two,
    [Description("Value 3")]
    Three
}

SampleEnum val = SampleEnum.One;

string desc = val.Description();