如何在另一个枚举中设置枚举值?

时间:2018-04-13 06:32:00

标签: c# enums

我想要这样的东西。

public enum AgeGroup  
{  
    Teenager = new enum { FromAge = 16, ToAge = 17 },  
    young = new enum { FromAge = 18, ToAge = 24  }   
}

我希望像AgeGroup.Teenager.FromDate一样访问它。

2 个答案:

答案 0 :(得分:6)

无法使用嵌套枚举。

您可以将父enum更改为类,它将起作用:

public class AgeGroup
{
    public enum Teegaer
    {
        FromAge = 16, ToAge = 17
    }

    public enum young
    {
        FromAge = 18, ToAge = 24
    }
}

答案 1 :(得分:0)

另一种方法是创建静态类

public static class AgeGroup
{
   public static class TeenAge
   {
      public static readonly int FromAge = 16;
      public static readonly int ToAge = 17;
   }

  public static class YoungAge
   {
      public static readonly int FromAge = 18;
      public static readonly int ToAge = 21;
   }
}

现在您可以参考变量,如下所示:

int teenAgeStarting = AgeGroup.TeenAge.FromAge  //16
int youngAgeStarting = AgeGroup.YoungAge.FromAge  //18

实施:DotNetFiddler