Kev*_*vin 6 c# string-literals switch-statement razor
当我想在我的字符串开关case语句中使用冒号":"时,我得到错误"unterminated string literal",我该如何解决这个问题,为什么会出错?
码:
@switch (stringText)
{
case "aaaa:ggg":
Do something...
break;
case "bbbb:ggg":
Do something else...
break;
}
Run Code Online (Sandbox Code Playgroud)
如果通过这样做修复它,但是没有找到它是一个好的解决方案:
const string extra = ":ggg";
@switch (stringText)
{
case "aaaa" + extra:
Do something...
break;
case "bbbb" + extra:
Do something else...
break;
}
Run Code Online (Sandbox Code Playgroud)
编辑:使用MVC Razor语法
如果您在实用程序类中将值定义为常量,然后引用这些常量而不是在 switch 语句中使用字符串文字,会怎么样?
class Constants
{
public const string Aaaa = "aaaa:gggg";
public const string Bbbb = "bbbb:gggg";
}
Run Code Online (Sandbox Code Playgroud)
...
@switch (stringText)
{
case Constants.Aaaa:
Do something...
break;
case Constants.Bbbb:
Do something else...
break;
}
Run Code Online (Sandbox Code Playgroud)