C# 通过传递的参数查找枚举值
我有这样一个枚举:C# 通过传递的参数查找枚举值,c#,asp.net,enums,C#,Asp.net,Enums,我有这样一个枚举: public enum Priority { Low = 0, Medium = 1, Urgent = 2 } 我想通过像Enum.GetEnumVar(Priority,0)这样的传递来获取例如Priority.Low,它应该返回Priority.Low 我怎样才能做到这一点 提前感谢。只需将其强制转换为枚举类型: 请注意,您可以将任何int强制转换为Priority,而不仅仅是那些名称为:(Priority)42的int有效。如下所示: Prior
public enum Priority
{
Low = 0,
Medium = 1,
Urgent = 2
}
我想通过像Enum.GetEnumVar(Priority,0)
这样的传递来获取例如Priority.Low
,它应该返回Priority.Low
我怎样才能做到这一点
提前感谢。只需将其强制转换为枚举类型:
请注意,您可以将任何int强制转换为Priority,而不仅仅是那些名称为:(Priority)42的int有效。如下所示:
Priority fromInt = (Priority)0;
Assert.That(fromInt, Is.EqualTo(Priority.Low));
此外,这项工作:
Priority fromString = (Priority)Enum.Parse(typeof(Priority), "Low");
Assert.That(fromString, Is.EqualTo(Priority.Low));
谢谢,但我认为Assert类是用于单元测试的,您打算验证它的状态吗?我在单元测试中运行了代码,以确保在剪切和粘贴之前没有输入错误。我保留这些断言,因为我认为它们传达了我想要表达的东西。类似于dtb使用以下注释的方式://priority==priority.Low。
Priority fromString = (Priority)Enum.Parse(typeof(Priority), "Low");
Assert.That(fromString, Is.EqualTo(Priority.Low));