首先自定义一个RemarkAttribute

[html] view plain copy

  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Reflection; 
  5. using System.Text; 
  6. using System.Threading.Tasks; 
  7. namespace Zemp.Process.Util.EnumAttribute 
  8. public class RemarkAttribute : Attribute 
  9. private string _remark; 
  10. public RemarkAttribute(string _remark) 
  11. this._remark = _remark; 
  12. public string Remark 
  13. get { return _remark; } 
  14. set { _remark = value; } 
  15. public static string GetEnumRemark(System.Enum _enum) 
  16. Type type = _enum.GetType(); 
  17. FieldInfo fd = type.GetField(_enum.ToString()); 
  18. if (fd == null) return string.Empty; 
  19. object[] attrs = fd.GetCustomAttributes(typeof(RemarkAttribute), false); 
  20. string name = string.Empty; 
  21. foreach (RemarkAttribute attr in attrs) 
  22. name = attr.Remark; 
  23. return name; 
  24. }

然后在Enum里面的使用

[html] view plain copy

  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. using System.Threading.Tasks; 
  6. using Zemp.Process.Util.EnumAttribute; 
  7. namespace Zemt.Process.WebServiceAPI.Enum 
  8. public enum WorkflowTypeEnum 
  9. /// <summary>
  10. /// 草稿 
  11. /// </summary>
  12. [Remark("草稿")] 
  13. Draft = -1, 
  14. /// <summary>
  15. /// 流转结束 
  16. /// </summary>
  17. [Remark("流转结束")] 
  18. Completed = 0, 
  19. /// <summary>
  20. /// 用户取消 
  21. /// </summary>
  22. [Remark("用户取消")] 
  23. UserCancel = 1, 
  24. /// <summary>
  25. /// 管理员取消 
  26. /// </summary>
  27. [Remark("管理员取消")] 
  28. AdminCancel = 2, 
  29. /// <summary>
  30. /// 流转中  
  31. /// </summary>
  32. [Remark("流转中")] 
  33. Running = 3, 
  34. /// <summary>
  35. /// 流转中(曾被拒绝过) 
  36. /// </summary>
  37. [Remark("流转中(曾被拒绝过)")] 
  38. EverDeclined = 4, 
  39. /// <summary>
  40. /// 未流转 
  41. /// </summary>
  42. [Remark("未流转")] 
  43. None = 5
  44. }

使用:得到Remark里面的值

RemarkAttribute.GetEnumRemark(WorkflowTypeEnum.None);

int 转 enum

(WorkflowTypeEnum)5

enum转int

convert.into32(WorkflowTypeEnum.None)

http://blog.csdn.net/qq873113580/article/details/48464481

最新文章

  1. Excel 实用技巧之一
  2. Android开发--TableLayout的应用
  3. 如何去掉Eclipse里面自动追加的一些注释!!!内详
  4. ABAP 权限程序
  5. Jquery dialog属性
  6. IOCP简单实现
  7. 《转载》三年建站之路走得一事无成 今来A5撞墙反思
  8. hdu 4883 思维题
  9. 刘汝佳 算法竞赛-入门经典 第二部分 算法篇 第五章 3(Sorting/Searching)
  10. 【字符串排序,技巧!】UVa 10905 - Children’s Game
  11. 通过WebApi取出XML数据
  12. ubuntu14.04 qt4开发环境搭建(vnc use gnome)
  13. BZOJ 3446: [Usaco2014 Feb]Cow Decathlon( 状压dp )
  14. 【ASP.NET Web API教程】1 ASP.NET Web API入门
  15. hashcode-equals方法
  16. [Swift]LeetCode150. 逆波兰表达式求值 | Evaluate Reverse Polish Notation
  17. Django的model form组件
  18. nodejs使用log4js记录日志
  19. Android-fragment的替换
  20. javascript解决getElementById()的bug以及getElementsByClassName的兼容性写法

热门文章

  1. 关于HttpURLConnection.setFollowRedirects
  2. window上利用pip安装pandas
  3. 一口气从CSS讲到Servlet再到JSP、Struts2,清蒸JavaWeb的前前后后。
  4. storm 源码笔记
  5. MySQL中的information_schema数据库详解
  6. 深入理解css系列:清除浮动
  7. Git 的深入理解与GitHub托管服务(转)
  8. 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。此 RPC 请求中提供了过多的参数。最多应为 2100
  9. .NET 操作XML
  10. study java language