using System; using System.ComponentModel; namespace Demo { [Flags] public enum Directions { [Description("Doğu")] E = 0, [Description("Kuzey Doğu")] NE = 1, [Description("Kuzey")] N = 2, [Description("Kuzey Batı")] NW = 3, [Description("Batı")] W = 4, [Description("Güney Batı")] SW = 5, [Description("Güney")] S = 6, [Description("Güney Doğu")] SE = 7, } public static class EnumsExtensions { public static string GetDescription(this Enum enumerationValue) { var type = enumerationValue.GetType(); var memberInfo = type.GetMember(enumerationValue.ToString()); if (memberInfo.Length > 0) { var attrs = memberInfo[0].GetCustomAttributes(typeof(DescriptionAttribute), false); if (attrs.Length > 0) { return ((DescriptionAttribute)attrs[0]).Description; } } return enumerationValue.ToString(); } } class Program { static void Main(string[] args) { Console.WriteLine(Directions.E.GetDescription()); Console.WriteLine(Directions.NE.GetDescription()); Console.WriteLine(Directions.N.GetDescription()); Console.WriteLine(Directions.NW.GetDescription()); Console.WriteLine(Directions.W.GetDescription()); Console.WriteLine(Directions.SW.GetDescription()); Console.WriteLine(Directions.S.GetDescription()); Console.WriteLine(Directions.SE.GetDescription()); } } }