1、定义枚举

    /// <summary>
    /// 订单状态
    /// </summary>
    public enum OrderState
    {
        待支付 = 1,
        待处理 = 2,
        配货中 = 3,
        已发货 = 4,
        已取消 = 5,
        已签收 = 6,
        配送失败 = 7

    }
    public enum ImageFoderType
    {
        [Description("Temp")]
        临时图片 = 0,
        [Description("GoodsImg")]
        商品图片 = 1,
        [Description("GoodsColorImg")]
        颜色图片 = 2,
        [Description("banner")]
        广告图片 = 3,
        [Description("ShowImg")]
        晒单图片 = 4

    }

2、根据枚举值获取枚举名称

 public static string GetOrderState(int OrderStateId)
    {
        string _name = string.Empty;
        int _status = 0;
        if (OrderStateId > 0)
        {
            _status = OrderStateId.ToString().ToInt();
        }
        if (Enum.IsDefined(typeof(Enums.OrderState), _status))
        {
            _name = ((Enums.OrderState)_status).ToString();
        }
        return _name;

    }
 

3、获取枚举对应说明文字

/// <summary> 获得某个Enum类型的中文,从description中读取
    /// </summary>
    /// <param name="enumType">枚举的类型</param>
    /// <param name="val">传入的值</param>
    /// <returns></returns>
    public static string GetEnumCNNameFromEnum(Type enumType, object val)
    {
        string enumvalue = Enum.GetName(enumType, val);
        if (String.IsNullOrEmpty(enumvalue))
            return "";
        FieldInfo finfo = enumType.GetField(enumvalue);
        object[] cAttr = finfo.GetCustomAttributes(typeof(DescriptionAttribute), true);
        if (cAttr.Length > 0)
        {
            DescriptionAttribute desc = cAttr[0] as DescriptionAttribute;
            if (desc != null)
            {
                return desc.Description;
            }
        }
        return enumvalue;
    }

C# 枚举使用和对应说明获取实例的更多相关文章

  1. Java学习-009-文件名称及路径获取实例及源代码

    此文源码主要为应用 Java 获取文件名称及文件目录的源码及其测试源码.若有不足之处,敬请大神指正,不胜感激!源代码测试通过日期为:2015-2-3 00:02:27,请知悉. Java获取文件名称的 ...

  2. class_copyIvarList方法获取实例变量问题引发的思考

    在runtime.h中,你可以通过其中的一个方法来获取实例变量,那就是class_copyIvarList方法,具体的实现如下: - (NSArray *)ivarArray:(Class)cls { ...

  3. hiero.ui获取实例名的方法

    在hiero.ui中经常会通过hiero.ui.windowManager().windows()来获取当前QMainWindow中的QWidget子窗口,而这些子窗口是以实例对象的方式返回的,如果想 ...

  4. 解决Openstack Dashboard无法获取实例故障

    在部署配置完openstack基础服务以及dashboard后.登录页面发现很多功能都不正常,无法获取实例,也无法获取镜像. 查看日志 [root@openstack-controller-dev ~ ...

  5. Elasticsearch 2.3 (ELK)Geo_point绘图、日志Date时间获取实例

    前言:本文源于天天是雾霾新闻,我想利用kibana画一下一线城市雾霾图,希望对想利用经纬度在kibana绘图和获取日志本身时间绘图的同学有所帮助.有什么疑问或者纠错,可以给我发邮件 一.数据准备 为了 ...

  6. NET 获取实例所表示的日期是星期几

    获取日期枚举,可以根据switch去进行操作 DateTime.Now.DayOfWeek

  7. Enum 枚举值 (一) 获取描述信息

    封装了方法: public static class EnumOperate { public class BaseDescriptionAttribute : DescriptionAttribut ...

  8. 枚举Enum转换为List,获取枚举的描述

    代码: public class EnumberHelper { public static List<EnumberEntity> EnumToList<T>() { Lis ...

  9. C# 枚举类型的描述信息获取

    新建一个控制台方法,写好自己的枚举类型: 如图: 在里面添加获取描述的方法: 具体源码: 链接:http://pan.baidu.com/s/1nv4rGkp 密码:byz8

随机推荐

  1. BZOJ 3990: [SDOI2015]排序 [搜索]

    3990: [SDOI2015]排序 题意:\(2^n\)的一个排列,给你n种操作,第i种把每\(2^{i-1}\)个数看成一段,交换任意两段.问是这个序列有序的操作方案数,两个操作序列不同,当且仅当 ...

  2. 简单实现ASP.Net MVC网页播放音乐

    <div> @*音乐*@ <audio id="warning-sound" loop="loop" src="/Areas/Map ...

  3. MessagePack简析

    一.MessagePack是什么 先看官方的定义:MessagePack是一种高效的二进制序列化格式.它允许您像JSON一样在多个语言之间交换数据.但是,它更快并且更小. 从官方定义中,可以有如下的结 ...

  4. python语言基础汇总

    注释 代码中添加注释是一个良好的编程习惯,python语言的注释才用井号'#'作为注释开头的,可以是任意内容,解释器会忽略掉这部分内容.其他每一行都是语句,当语句以冒号':'结尾时,缩进的语句视为代码 ...

  5. JavaScript之父谈JavaScript

    本文翻译自popularity,为了更好的阅读我把部分内容进行了增删改,如果你英语比较好,建议直接阅读原文,因为这篇文章是我通过google翻译再进行修改的. 貌似(根据一位精神导师的说法)JavaS ...

  6. 几个重要的shell命令:diff patch tar find grep

    diff diir_1.0/ dir_2.0/ -urNB > dir_2.0.patch u:union以合并的格式来输出文件的差异信息 r:递归的对比所有的子目录下的文件 U:将不存在的文件 ...

  7. ubuntu14.04上实现faster rcnn_TF的demo程序及训练过程

    安装环境:Ubuntu14.04.显卡Tesla K40C+GeForce GT 705.tensorflow1.0.0.pycharm5.0 说明:原文见博客园,有问题原文下留言,不定期回复.本文作 ...

  8. 定制化WinPE

    1 .首先挂载wim Dism /Mount-WIM /WimFile:D:\install.wim /Index: /MountDir:D:\wimmount 2. 如何要修改WinPE的启动项,可 ...

  9. Bruce Eckel的资源

    1 GitHub的技术博客 2 On Java 8 – Bruce Eckel 3 artima_weblogs - Bruce Eckel 4 back issues 5 eckel-oo-prog ...

  10. php获取今日开始时间戳和结束时间戳

    1.php获取今日开始时间戳和结束时间戳  $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));$endToday=mktime(0,0,0 ...