/// <summary>
/// 将enum转换成List<Model.Models.SelectViewModels>,即html的select标签使用的数据
/// </summary>
/// <returns></returns>
public static List<Model.Models.SelectViewModels> EnumToSelect(Type t)
{
List<Model.Models.SelectViewModels> select = new List<Model.Models.SelectViewModels>();
foreach (var e in Enum.GetValues(t))
{
Model.Models.SelectViewModels model = new Model.Models.SelectViewModels();
model.Text = e.ToString();
model.Value = Enum.Format(t, e, "d");
select.Add(model);
}
return select;
}
      使用属性器获得属性值
      public enum RedPackStatus
     {
   [Description("发放中")]
   SENDING,
   [Description("已发放待领取")]
   SENT,
   [Description("发放失败")]
   FAILED,
   [Description("已领取")]
   RECEIVED,
   [Description("退款中")]
   RFUND_ING,
   [Description("已退款")]
   REFUND,      }      /// <summary>
/// 获取枚举描述信息
/// </summary>
/// <param name="enumType">枚举类型</param>
/// <param name="enumStr">枚举字值字符串</param>
/// <returns></returns>
public static string GetEnumDescription(Type enumType, string enumStr)
{
FieldInfo p = enumType.GetField(enumStr);
object[] os = p.GetCustomAttributes(typeof(System.ComponentModel.DescriptionAttribute), true);
if (os == null || os.Length == )
{
return null;
}
return ((DescriptionAttribute)os[]).Description; }      public ActionResult Index(string id)
{
string a = Common.EnumToList.GetEnumDescription(typeof(Utility.Enums.WeiXin.RedPackStatus), "SENDING");
return Content("a:"+a);
}

.Net Enum的更多相关文章

  1. Swift enum(枚举)使用范例

    //: Playground - noun: a place where people can play import UIKit var str = "Hello, playground& ...

  2. 枚举:enum

    枚举 所谓枚举就是指定好取值范围,所有内容只能从指定范围取得. 例如,想定义一个color类,他只能有RED,GREEN,BLUE三种植. 使用简单类完成颜色固定取值问题. 1,就是说,一个类只能完成 ...

  3. Asp.Net 将枚举类型(enum)绑定到ListControl(DropDownList)控件

    在开发过程中一些状态的表示使用到枚举类型,那么如何将枚举类型直接绑定到ListControl(DropDownList)是本次的主题,废话不多说了,直接代码: 首先看工具类代码: /// <su ...

  4. 用枚举enum替代int常量

    枚举的好处: 1. 类型安全性 2.使用方便性 public class EnumDemo { enum Color{ RED(3),BLUE(5),BLACK(8),YELLOW(13),GREEN ...

  5. The Java Enum: A Singleton Pattern [reproduced]

    The singleton pattern restricts the instantiation of a class to one object. In Java, to enforce this ...

  6. c# (ENUM)枚举组合类型的谷歌序列化Protobuf

    c# (ENUM)枚举组合类型的谷歌序列化Protobuf,必须在序列化/反序列化时加上下面: RuntimeTypeModel.Default[typeof(Alarm)].EnumPassthru ...

  7. (转)C# Enum,Int,String的互相转换 枚举转换

    Enum为枚举提供基类,其基础类型可以是除 Char 外的任何整型.如果没有显式声明基础类型,则使用 Int32.编程语言通常提供语法来声明由一组已命名的常数和它们的值组成的枚举. 注意:枚举类型的基 ...

  8. set和enum类型的用法和区别

    mysql中的set和enum类型的用法和区别 mysql中的enum和set其实都是string类型的而且只能在指定的集合里取值, 不同的是set可以取多个值,enum只能取一个值.   1 2 3 ...

  9. java enum

    小谈Java Enum的多态性 博客分类: Java JavaAppleJDKJVMIDEA  Enum+多态,我没说错,不过Enum是不可以被继承的,也不可以继承自别人,只是能实现接口而已,何谈多态 ...

  10. enum 与 enum class

    c++11中引入了新的枚举类型---->强制枚举类型 // unscoped enum: enum [identifier] [: type] {enum-list};  // scoped e ...

随机推荐

  1. REDIS 主从复制

      REDIS目前给出了一个异步的主从复制版本系统.在redis里 提供了几种方式来完成这个工作. 主从复制主要对应在redis/replication.c这个文件里.源码框架里 分为3部分: Mas ...

  2. C语言的基础

    任何事物的运行离不开两个部分,一个部分是"事物",一个部分是"运行",前者是状态,在C语言中表现为常量.变量等,后者是过程,在C语言中表现为语句.函数等. 语言 ...

  3. ionic 打包签名

    IONIC用一下命令打包会自动签名并且打包 ionic build android 自己签名并且打包方法: 1>在你项目app\platforms\android目录下新建文件:debug-si ...

  4. js点击空白处弹窗消失

    $(document).mousedown(function(e){ var _list = $('#pop'); if(!_list.is(e.target) && _list.ha ...

  5. 一个App Widget实例第一次创建时被调用

    事实上已经有很多的所谓的路由框架做到这一点,我也没有去研究别的,加上一直对backbone这个框架的评价不错,所以就琢磨着怎么用它实现我所需要的SPA的url管理了. 比如,你可能会说"如果 ...

  6. WinForm DataGridView根据选中的复选框删除

    注意:在DataGridView添加一列(name:delete),ColumnType属性为:DataGridViewCheckBoxColumn,FlaseValue属性为:Flase,TureV ...

  7. echarts图表标签(axisLabel)折行

    在项目中遇到了一个echarts图表标签过长需折行的需求,so引出这篇总结,啦啦啦有帮助就多多支持啦,撒花撒花撒花~~~~ 在此不对echarts其他用法做解释,详细见echarts文档(点击前往) ...

  8. 关于判断checkbox选中问题

    attr和prop的区别: 因为DOM节点属性可以理解为静态的,当页面渲染完,checked属性就确定了,就是checked.而HTML元素属性是动态的,随时可以改变,而且对于checked这个属性, ...

  9. 实现AJAX的异步交互的步骤

    <input type="button" value="异步请求"id="btn"> <script> 实现ajax ...

  10. help man info 三个的区别

    “--help”选项 “--help”是一个工具选项,大部分的GNU工具都具备这个选项,“--help”选项可以用来显示一些工具的信息 “man”工具 Man工具可以显示系统手册页中的内容,这些内容大 ...