【发布时间】:2022-06-10 18:05:02
【问题描述】:
我正在开发 .NET 6.0 应用程序,我尝试在 switch 中使用枚举来与字符串值进行比较,但出现异常。
error
private static bool ValidateAlphanumericCase(string text, string fieldName)
{
if (!string.IsNullOrWhiteSpace(fieldName))
{
var rule = GetRule(fieldName).TxtFieldFormat; // string value
switch (rule)
{
case TextFieldFormat.AlphanumericUpperCase.ToString():
break;
case TextFieldFormat.AlphanumericLowerCase.ToString():
break;
}
}
else
{
new EmptyFieldNameException();
}
return false;
}
enum
public enum TextFieldFormat
{
AlphanumericUpperCase = 0,
AlphanumericLowerCase = 1,
}
【问题讨论】:
-
这是编译错误,不是异常。它告诉你无论
TextFieldFormat是什么,它都没有AlphanumericUpperCase。您是否引用了错误的项目?枚举是否在不同的命名空间中?这与switch无关
标签: c# enums switch-statement .net-6.0