首页 > 代码库 > 获取枚举类型的描述description
获取枚举类型的描述description
using System;using System.Collections.Generic;using System.ComponentModel;using System.Linq;using System.Reflection;using System.Text;using System.Threading.Tasks;namespace candel{ class Program { static void Main(string[] args) { int x = (int)OrderType.WaitConfirm; string str = Util.GetEnumDesc(typeof(OrderType), x); Console.WriteLine(str); Order o = new Order() { Id = 1, Type = (int)OrderType.Complete }; string str2 = (typeof(OrderType)).GetEnumDesc(o.Type); Console.WriteLine(str2); Console.Read(); } } public class Order { public int Id { set; get; } public int Type { set; get; } } public enum OrderType { /// <summary> /// 等待用户付款 /// </summary> [Description("等待用户付款")] WaitPay = 0, /// <summary> /// 等待商家发货 /// </summary> [Description("等待商家发货")] WaitSend = 1, /// <summary> /// 等待用户确认收货 /// </summary> [Description("等待用户确认收货")] WaitConfirm = 2, /// <summary> /// 订单完成 /// </summary> [Description("订单完成")] Complete = 3 } public static class Util { /// <summary> /// 根据值得到中文备注 /// </summary> /// <param name="e"></param> /// <param name="value"></param> /// <returns></returns> public static String GetEnumDesc(this Type e, int? value) { FieldInfo[] fields = e.GetFields(); for (int i = 1, count = fields.Length; i < count; i++) { if ((int)System.Enum.Parse(e, fields[i].Name) == value) { DescriptionAttribute[] EnumAttributes = (DescriptionAttribute[])fields[i]. GetCustomAttributes(typeof(DescriptionAttribute), false); if (EnumAttributes.Length > 0) { return EnumAttributes[0].Description; } } } return ""; } }}
获取枚举类型的描述description
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。