我可以缩短到一行吗?我尝试了各种各样的方法,但不能完全正确。
@if(SiteMap.CurrentNode.Title == "Contact")
{
@:<div class="contact">
}
答案 0 :(得分:22)
可能有一个更简单的解决方案,但这应该有效:
@Html.Raw((SiteMap.CurrentNode.Title == "Contact") ? "<div class='contact'>" : "")
答案 1 :(得分:13)
另一种方式是:
@if(SiteMap.CurrentNode.Title == "Contact") { <text><div class="contact"></text> }
我个人觉得它比三元运算符更具可读性,但这是个人的
答案 2 :(得分:9)
最简单的方法是:
@(SiteMap.CurrentNode.Title == "Contact" ? "<div class='contact'>" : "")
或
@(SiteMap.CurrentNode.Title == "Contact" ? @"<div class=""contact"">" : "")
如果你不重复你的HTML代码,那么甚至更短
<div class="@(SiteMap.CurrentNode.Title == "Contact" ? "contact" : "")">
答案 3 :(得分:0)
这将起作用
剃刀语法
@(SiteMap.CurrentNode.Title == "Contact" ? "<div class='contact'>")