相关疑难解决方法(0)

我应该如何将字符串转换为C#中的枚举?

在C#中将字符串转换为枚举值的最佳方法是什么?

我有一个包含枚举值的HTML选择标记.发布页面时,我想获取值(将以字符串的形式)并将其转换为枚举值.

在一个理想的世界里,我可以这样做:

StatusEnum MyStatus = StatusEnum.Parse("Active");
Run Code Online (Sandbox Code Playgroud)

但那不是有效的代码.

c# string enums

797
推荐指数
17
解决办法
63万
查看次数

Enum.Parse(),肯定是一个更简洁的方式?

说我有一个枚举,

public enum Colours
{
    Red,
    Blue
}
Run Code Online (Sandbox Code Playgroud)

我能看到解析它们的唯一方法就是:

string colour = "Green";
var col = (Colours)Enum.Parse(typeOf(Colours),colour);
Run Code Online (Sandbox Code Playgroud)

这将抛出System.ArgumentException,因为"Green"不是Colours枚举的成员.

现在我真的很讨厌在try/catch中包装代码,有没有更简洁的方法来做这个不涉及我迭代每个Colours枚举,并进行字符串比较colour

c# asp.net enums

60
推荐指数
5
解决办法
3万
查看次数

标签 统计

c# ×2

enums ×2

asp.net ×1

string ×1