C#/.NET应用程序编程开发中如何获取一个枚举中定义的枚举值个数?

C#开发 作者: Rector 8 次阅读 · 读完约需 1 分钟 收藏本文

郑重申明:本文未经许可,禁止任何形式转载

问题描述

如题,在C#/.NET应用程序编程开发中,如何获取一个枚举中定义的枚举值个数?

比如当前有如下的枚举:

public enum WeekDays
{
    Monday = 1,
    Tuesday = 2,
    Wednesday = 3,
    Thursday = 4,
    Friday = 5,
    Saturday = 6,
    SunDay = 0
}

不用程序就能看出来,WeekDays的枚举值个数为7个,那么如何使用C#读取这一数值呢?

方案一

在C#/.NET应用程序编程开发中,并没有可以类似Enum.Lenght这个的直接读取枚举值个数的方法,那么我们需要绕个弯来直接读取。这里可以使用枚举的GetNames()方法,如下(完整示例):

using System;
using System.Collections.Generic;
using System.Linq;

public class Program
{
  public enum WeekDays
  {
    Monday = 1,
    Tuesday = 2,
    Wednesday = 3,
    Thursday = 4,
    Friday = 5,
    Saturday = 6,
    SunDay = 0
  }
  public static void Main()
  {
    var len = GetEnumLength();
    Console.WriteLine("Length of WeekDays:{0}",len);
  }

  private static int GetEnumLength()
  {
    var len = Enum.GetNames(typeof(WeekDays)).Length;
    return len;
  }
}

输出结果为:

Length of WeekDays:7

温馨提示:本文标注有(完整示例)的示例代码可以直接粘贴在try.dot.net中运行。

阅读了该文章的人还浏览了...

本文永久链接码友网 » C#/.NET应用程序编程开发中如何获取一个枚举中定义的枚举值个数?

发布于: 2019-06-20 16:14:56
分享扩散:

发表评论

登录用户才能发表评论, 请 登 录 或者 注册