【问题标题】:Use switch case in MVC view在 MVC 视图中使用 switch case
【发布时间】:2014-01-17 14:16:57
【问题描述】:
在 MVC 视图中,我有一个“for”命令,我想在每个值中写入指定的标签。
我在这里给你看一个简单的例子:
@for (var i = 0; i < 4; i++)
{
<div>
@(switch (i)
{
case 0: ??? //write "<div>Custom Value 1</div>"
break;
case 1: ??? //write "<span>Custom Value 2</span>"
break;
})
</div>
}
我使用 MVC4 Razor 视图。
提前感谢您的宝贵时间。
【问题讨论】:
标签:
c#
asp.net-mvc
asp.net-mvc-4
razor
【解决方案1】:
很简单,你用和这个一样的代码,就可以了。
@for (var i = 0; i < 4; i++)
{
<div>
@switch (i)
{
case 0:
<div>Custom Value 1</div>
break;
case 1:
<span>Custom Value 2</span>
break;
}
</div>
}
【解决方案2】:
这应该可行。
@for (var i = 0; i < 4; i++)
{
<div>
@switch (i)
{
case 0:
<div>Custom Value 1</div>
break;
case 1:
<span>Custom Value 2</span>
break;
}
</div>
}
【解决方案3】:
Switch (condition)
{
Case value or result :
Statement
Break;
Default:
}
【解决方案4】:
作为已接受答案的补充,如果您正在处理文字(例如,如果您想动态设置一个类),您不能只将它们写在 case 语句中。
您可以使用 @: 来打印它们。
示例:
<div class="alert @switch(state){
case State.OK:
@:alert-success
case State.ERROR:
@:alert-danger
case State.RUNNING:
@:alert-info
}">...</div>