//获取枚举的值
public static IEnumerable<T> GetEnumValues<T>() where T : struct { T[] values = (T[])Enum.GetValues(typeof(T)); foreach (var itemValue in values) { if (Convert.ToInt32(itemValue) != 0) { yield return itemValue; } } }
Dictionary<int, string> dicRet = new Dictionary<int, string>(); //获取Enums的值 var resonlist = EnumsHelper.GetEnumValues<MakeSureComplaintReson>(); foreach (var item in resonlist) { dicRet.Add((int)item, item.GetDescription()); } return dicRet;
public enum MakeSureComplaintReson { [Description("a")] reson1 = 1, [Description("b")] reson2 = 2, [Description("c")] reson3 = 3, [Description("其它")] reson9 = 9 }
最终得到的结果:
[{1,'a'},{2,'b'},{3,'c'},{9,'其它'}]