【发布时间】:2021-12-24 20:17:33
【问题描述】:
我有 1 个字符串变量,有 Enums,需要将传入的字符串变量与 Enum Values 进行比较,如果找到比较,我需要获取比较的 Enum Key 并分配给一些 int 变量。我怎样才能做到这一点? 我只需要枚举键。
例如我有:
public class Enums
{
Admin = 0,
Seller = 1,
Member = 2,
Unknown = 3
}
还有一些基类:
string tech = “Member”;
foreach(string value in Enum.GetNames(typesof(Enums)))
{
If(tech == value)
{
int enumValueKey = And here I need '2'.
}}}
在基类中,我只有字符串类型变量,例如(字符串管理员、字符串卖方、字符串成员、字符串未知)。如果它找到 1 个比较,则应将 Key 写入 int value ,与 Enums 中找到的值相同。
非常感谢
【问题讨论】:
-
看看
Enum.Parse,Enum.TryParse -
int key = (int) (Enum.Parse<Enums>(tech));- 只需Parse,然后根据需要转换为int
标签: c# asp.net-core variables foreach enums