我想根据WhichColor
属性的值更改类名。如果为1,则应为红色;如果为2,则应为蓝色,依此类推。我知道如何使用:?
语句对两种颜色执行此操作。但是,如果我还有更多呢?
我尝试使用switch case进行操作,但是它不允许我返回字符串,我可能不了解在这种情况下switch case是如何工作的。
<td class="@{
switch (item.WhichColor)
{
case 1:
return "red";
case 2:
return "blue";
case 3:
return "green";
default:
break;
}
} ">
@Html.DisplayFor(modelItem => item.WhichColor)
</td>
我希望它像上面的开关盒一样工作,但是不允许我返回字符串。我该如何实现?
答案 0 :(得分:0)
好吧,我已经设法通过合并的临时声明来做到这一点:
<td class="@(
(item.WhichColor == 1) ? "green" : (item.WhichColor == 2) ? "yellow" : (item.WhichColor == 3) ? "red" : (item.WhichColor == 4) ? "blue" : (item.WhichColor == 5 ? "gray" : "")
)">
@Html.DisplayFor(modelItem => item.WhichColor)
</td>