语法后的特殊字符

时间:2013-12-01 23:03:20

标签: asp.net-mvc razor razor-2

我想知道如何在Razor语法之后添加特殊字符是否可行。

示例:

@Html.Raw(Model.Text)()

问题出在最后()。我想在生成的内容之后添加它。

2 个答案:

答案 0 :(得分:1)

试试这个:

@Html.Raw(Model.Text)<text>()</text>

<text></text>是特殊的剃须刀标记,不要与实际的HTML混淆。

  

<text>标签是由Razor专门处理的元素。它导致Razor将<text>块的内部内容解释为内容,并且不呈现包含<text>标记元素(意味着仅呈现<text>元素的内部内容 - 标签本身不会)。这样,当您想要渲染未被HTML元素包装的多行内容块时,这将非常方便。

引自ASP.NET MVC 3: Razor’s @: and <text> syntax

答案 1 :(得分:1)

作为<text></text>标记的替代方法,您只需将Html.Raw语句包装在括号中即可。例如:

@(Html.Raw(Model.Text))()

这样可以防止剃刀试图解析额外的括号,因为它们可以帮助剃刀确定何时停止解析标记。