ASP.NET MVC3 Razor - @ *做什么?

时间:2011-02-01 23:31:18

标签: asp.net-mvc-3 razor shortcuts

因为搜索Google标点符号非常困难......

我在Razor中知道@启动了一个代码块,但@*做了什么?据我所知,在VS中,它会启动一个评论块。如果这与/*不同,怎么样?

2 个答案:

答案 0 :(得分:6)

@ *是服务器端评论:

如果你有这样的代码:

<p>
   /* comment 1 */
   @* comment 2 *@
   <!-- comment 3 --> 
   @{ /* comment 4 */ }
</p>

注释1将不起作用,因为您未处于服务器模式。该代码将发送到浏览器,浏览器将显示它,因为/ *不是html评论。

此外,评论3将发送给客户。我甚至认为,如果它包含@ blocks,它将在服务器上进行解析和执行。

评论2和4不会通过线路发送。但是4号有点难看。

答案 1 :(得分:1)

自: http://www.asp.net/webmatrix/tutorials/2-introduction-to-asp-net-web-programming-using-the-razor-syntax

对于ASP.NET Razor注释,您使用@ *开始注释并以* @结束。评论可以在一行或多行。

如果我理解正确,/*仅适用于<% %>块,因为/* */是注释的C#语法。您可以从@*块外部编写<% %>。 所以不要写像

这样的评论
<% /* This is
a multiline comment */ %>

可以写成:

@* This is
a multiline comment *@