如何在If语句中包含HTML

本文关键字:包含 HTML 语句 If | 更新日期: 2023-09-27 18:03:24

为什么当我在c#语句中有某些HTML时,Razor会抱怨无效的表达式和术语?

我该如何解决这个问题?

例如

;在my _layout.cshtml:

@if (Team.Id == ViewBag.TeamId)
{
    </div>
    <div class="row">
    &nbsp;
}

如何在If语句中包含HTML

Razor实际上试图理解你的HTML。不幸的是,它不能是高度智能的,不能识别动态代码或表达式之外的代码。

以来
</div>
<div>

是无效的HTML,它报错。

您可以使用@:

来避免这个问题

这迫使razor绕过它的"HTML识别",直接打印你想要的东西。

@if (Team.Id == ViewBag.TeamId)
{
    @:</div>
    @:<div class="row">
    @:&nbsp;
}

您也可以在if语句中使用@Html.Raw("YOUR HTML");来添加HTML代码