2

我正在使用以下帮助程序来帮助我生成链接:

@helper BuildLink(string name, string action, string controller)
    {
    var url = Url.Action(action, controller);
    bool isActive = Request.Url.AbsolutePath.Equals(url, StringComparison.InvariantCultureIgnoreCase);
    <li class="@(isActive ? "current" : String.Empty)"><a href="@(url)">@name</a></li>
}

它工作得很好。问题是,我需要在文档的不同位置关闭“li”标签。如果我删除助手的“关闭 li”部分,当我尝试查看视图时会收到一条错误消息:

解析器错误消息:帮助程序块缺少结束“}”字符。确保此块中的所有“{”字符都有一个匹配的“}”字符,并且没有一个“}”字符被解释为标记。

有没有办法不必包含这个结束的“li”标签?

4

1 回答 1

6

如果你在任何标签之前放置一个@:。它避免了剃须刀的结束标签验证,例如

@:<li>
于 2012-05-03T03:22:32.820 回答