如何使用枚举值在 C# 中获取枚举键

How to get enum Key in C# using Enum Value

我有 1 个字符串变量,有枚举并且需要将传入的字符串变量与枚举值进行比较,如果找到比较,我需要采用比较的枚举键并分配给一些 int 变量。我怎样才能做到这一点? 我只需要枚举密钥。

例如我有:

public class Enums
{
  Admin = 0,
  Seller = 1,
  Member = 2,
  Unknown = 3
}

还有一些基地class:

string tech = “Member”;

foreach(string value in Enum.GetNames(typesof(Enums)))
{
  If(tech == value)
{
  int enumValueKey =  And here I need '2'. 
}}}

在 Base class 中,我只有字符串类型的变量,例如(字符串 Admin、字符串 Seller、字符串 Member、字符串 Unknown)。如果找到 1 个比较,则应将 Key 写入 int value,与在 Enums 中找到的值相同。

非常感谢

您可以通过 Enum.Parsetypeof

实现
public enum Enums
{
  Admin = 0,
  Seller = 1,
  Member = 2,
  Unknown = 3
}

int myEnum = (int)(Enums)Enum.Parse(typeof(Enums), "Seller");
Console.WriteLine(myEnum); // 1