为什么当我在C#语句中使用某些HTML时,Razor会抱怨无效的表达式和术语?
我该如何解决这个问题?
例如;在我的_layout.cshtml中:
@if (Team.Id == ViewBag.TeamId)
{
</div>
<div class="row">
}
答案 0 :(得分:9)
Razor实际上试图了解您的HTML。不幸的是,它不能高度智能化,并能识别表达式之外的动态代码或代码。
由于
</div>
<div>
是无效的HTML,它抱怨。
您可以使用@:
这迫使剃刀绕过其“HTML识别”,只需打印您要求的任何内容。
E.g。
@if (Team.Id == ViewBag.TeamId)
{
@:</div>
@:<div class="row">
@:
}
答案 1 :(得分:0)
您还可以在@Html.Raw("YOUR HTML");
语句中使用if
添加HTML代码