如何将字符串转换为int类型的枚举?

mrb*_*lah 2 c# enumeration

可能重复:
如何在C#中将字符串转换为枚举?

我有一个int类型的枚举:

public enum BlahType
{
       blah1 = 1,
       blah2 = 2
}
Run Code Online (Sandbox Code Playgroud)

如果我有一个字符串:

string something = "blah1"
Run Code Online (Sandbox Code Playgroud)

如何将其转换为BlahType?

Pie*_*ant 8

我使用像这样的功能

public static T GetEnumValue<T>(string value)
{
    return (T)Enum.Parse(typeof(T), value);
}
Run Code Online (Sandbox Code Playgroud)

你可以这样称呼它

BlahType value = GetEnumValue<BlahType>("Blah1");
Run Code Online (Sandbox Code Playgroud)


Win*_*ith 7

你想要Enum.Parse

BlahType blahValue = (BlahType) Enum.Parse(typeof(BlahType), something); 
Run Code Online (Sandbox Code Playgroud)