为参数指定枚举值

本文关键字:枚举 参数 | 更新日期: 2023-09-27 18:28:04

我有一个枚举,如下所示:

public enum MyValues
{
   value1 = 1,
   value2 = 2,
   value3 = 3
}

然后我调用外部web API,得到value-1 的值

我的内部方法需要一个枚举值,如下所示:

public void MyMethod(MyValues value)
{
   // Do something...
}

我的问题是,如何根据外部接收的内容传递枚举值?很明显,我需要进行比较并确定我收到了什么,但我不确定如何将枚举值"分配"给参数。参数的类型是什么?

var myEnumValue = // What does my assignment look like?

为参数指定枚举值

关于:

var myEnumValue = (MyValues)int.Parse(apiValue.Split('-')[1]);

另一个选项:

var input = "value-1";
var myEnumValue = (MyValues)Enum.Parse(typeof(MyValues), input.Replace("-", ""));