C# 枚举使用和对应说明获取实例

简介: 1、定义枚举 /// /// 订单状态 /// public enum OrderState { 待支付 = 1, 待处理 = 2, 配货中 = 3,...

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;
    }


 

 

目录
相关文章
|
11月前
|
缓存 C#
C# 操作路径(Path)类方法的使用与解析运行实例
C# 操作路径(Path)类方法的使用与解析运行实例
|
6月前
|
程序员 C#
深入理解 C# 编程:枚举、文件处理、异常处理和数字相加
枚举是一个特殊的“类”,表示一组常量(不可更改/只读变量)。 要创建枚举,请使用 enum 关键字(而不是 class 或 interface),并用逗号分隔枚举项:
66 0
|
数据采集 JSON API
C#网络爬虫实例:使用RestSharp获取Reddit首页的JSON数据并解析
C#网络爬虫实例:使用RestSharp获取Reddit首页的JSON数据并解析
|
1月前
|
C#
C# 枚举(Enum)
枚举是一组命名整型常量。枚举类型是使用 enum 关键字声明的。 C# 枚举是值类型。换句话说,枚举包含自己的值,且不能继承或传递继承。
41 9
|
1月前
|
数据可视化 程序员 C#
C#中windows应用窗体程序的输入输出方法实例
C#中windows应用窗体程序的输入输出方法实例
40 0
|
2月前
|
存储 C# 开发者
枚举与结构体的应用:C#中的数据组织艺术
在C#编程中,枚举(`enum`)和结构体(`struct`)是非常重要的数据类型。枚举用于定义命名常量集合,提高代码可读性;结构体则封装相关数据字段,适合小型数据集。本文从基本概念入手,探讨它们的使用技巧、常见问题及解决方案,帮助开发者更好地利用这些特性构建健壮的应用程序。
41 8
|
3月前
|
开发框架 .NET C#
C#语言进阶(四) 枚举器和迭代器
C#语言进阶(四) 枚举器和迭代器
34 0
|
3月前
|
传感器 开发框架 JSON
聊聊 C# dynamic 类型,并分享一个将 dynamic 类型变量转为其它类型的技巧和实例
聊聊 C# dynamic 类型,并分享一个将 dynamic 类型变量转为其它类型的技巧和实例
152 0
|
4月前
|
文字识别 自然语言处理 C#
印刷文字识别使用问题之C#发票识别的代码实例在哪里可以查看
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
6月前
|
安全 API C#
C#.Net筑基-类型系统②常见类型--枚举Enum
枚举(enum)是C#中的一种值类型,用于创建一组命名的整数常量。它们基于整数类型(如int、byte等),默认为int。枚举成员可指定值,未指定则从0开始自动递增。默认值为0。枚举可以与整数类型互相转换,并可通过`[Flags]`特性表示位域,支持位操作,用于多选场景。`System.Enum`类提供了如`HasFlag`、`GetName`等方法进行枚举操作。