使用代码段遍历,枚举类型Enum

Posted 大海的泡沫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用代码段遍历,枚举类型Enum相关的知识,希望对你有一定的参考价值。

最近项目中定义了一些枚举类型,需要将枚举的键值传给前端,用于制作下拉菜单。

1、首先定义了枚举类型

   public enum 请假类型 : int
    {

      病假 = 1,
      事假 = 2,
      婚假 = 3,
      产假 = 4,
      丧假 = 5

    }

这里我新建了一个控制台应用程序看了下输出效果,

  public static void Main(string[] args)
  {

    foreach (var item in Enum.GetValues(typeof(请假类型)))
    {
      Console.WriteLine(string.Format("{0}={1}", item.ToString(), Convert.ToInt32(item)));
      var mm = (请假类型)Enum.Parse(typeof(请假类型), item.ToString());
      Console.WriteLine(mm);

    }
    Console.Read();
}

 

效果真是我想要的

2、然后新建一个对象

 

 /// <summary>
    /// 请假类型
    /// </summary>
    public class OffWeekType
    {
        /// <summary>
        /// 类型名
        /// </summary>
        public string Name { get; set; }
        /// <summary>
        /// 类型值
        /// </summary>
        public string Value { get; set; }
    }

将值赋给对象

/// <summary>
        /// 获取所有的请假类型         
        /// </summary>
        /// <returns></returns>
        public ResultEntity<List<OffWeekType>> GetOffWorkType()
        {
            List<OffWeekType> list = new List<OffWeekType>();
            foreach (var value in Enum.GetValues(typeof(请假类型)))
            {
                //var result = string.Format("Name:\'{0}\',Value:{1}", value.ToString(), Convert.ToInt32(value));      //遍历枚举类型
                OffWeekType type = new OffWeekType
                {
                    Name = value.ToString(),
                    Value = Convert.ToInt32(value).ToString(),
                };
                list.Add(type);
            }
            return GetResultEntity(list);
        }

 

以上是关于使用代码段遍历,枚举类型Enum的主要内容,如果未能解决你的问题,请参考以下文章

C语言基础:enum 枚举类型(定义遍历枚举元素枚举在 switch 中的使用将整数转换为枚举)

C/C++ 中enum枚举量的介绍:介绍enum枚举量在C/C中的作用和使用方法

C语言怎样取得枚举型的名字 而不是值

java成神之——enum枚举操作

宏(define)与常量(const) 和 枚举(enum)的使用

干货 - 一文搞定Python 枚举