从值获取枚举类型

ank*_*kur 5 c# enums

public enum WeekDays { Sun = 1, Mon = 2, Tue=3, Wed=4, Thu=5, Fri=6, Sat=7 }
Run Code Online (Sandbox Code Playgroud)

我有这个枚举,我有枚举的价值.我想要做的是通过传递值获取我想要传递给下面的函数的类型.我可以通过开关盒做任何更好的方法吗?

例如:value是6然后是Weekdays.Fri作为一个类型应该传递给下面的函数.

  public void CreateNew(WeekDays days)
  {
   //Some logic
  }
Run Code Online (Sandbox Code Playgroud)

Mat*_*nen 8

您需要做的就是投射价值.

CreateNew((WeekDays)6);
Run Code Online (Sandbox Code Playgroud)

枚举值基本上只是类型化的整数,因此您可以在枚举和整数类型之间自由地转换.甚至可以将枚举中不存在的整数值转换为该类型而没有问题,因此如果要避免这种情况,请记住添加在转换之前检查该值是否存在的验证.