如何在Razor视图中写评论?

hor*_*rgh 115 c# comments razor asp.net-mvc-3

如何在mvc视图中编写注释,不会传输到最终的html(即浏览器,响应).人们可以发表评论

<!--<a href="/">My comment</a> -->
Run Code Online (Sandbox Code Playgroud)

但它在浏览器的页面源代码中可见.

是否可以在cshtml文件中留下评论仅供内部使用?

Stu*_*tLC 207

请注意,一般情况下,IDE就像Visual Studio一样,会在当前语言的上下文中标记注释,通过选择要转换为注释的文本,然后使用 快捷键,或者如果您正在使用然后是Resharper/Intelli-J风格的快捷方式.aspx.

服务器端评论:

剃刀.cshtml

像这样:

@* Comment goes here *@
Run Code Online (Sandbox Code Playgroud)

.aspx
对于那些寻找旧.aspx视图(和Asp.Net WebForms)服务器端注释语法的人:

<%-- Comment goes here --%>
Run Code Online (Sandbox Code Playgroud)

客户端评论

HTML评论

<!-- Comment goes here -->
Run Code Online (Sandbox Code Playgroud)

Javascript评论

// One line Comment goes Here
/* Multiline comment
   goes here */
Run Code Online (Sandbox Code Playgroud)

作为OP提到,虽然在浏览器上没有显示,客户端的意见将仍然会产生对服务器上的网页/脚本文件,并通过网页通过HTTP,这除非移除(例如缩小),将下载的浪费I/O,以及,由于用户可以通过查看页面源查看注释或使用浏览器的Dev Tools或Fiddler或Wireshark等工具拦截流量,因此也可能存在安全风险,因此优先使用服务器端注释对服务器生成代码(如MVC视图或.aspx页面).

  • 忘了试试)))))我通常使用Ctrl + E,C和Ctrl + E,U.非常感谢 (2认同)
  • @ZackaryGeers我没有关注——发人深省的答案似乎重复了我原来的答案,我随后进行了扩充以回应OP关于隐藏评论以供内部使用的担忧。什么是不正确的? (2认同)
  • 但我在 Razor 页面中使用 C# 注释语法(`//...`、`/*...*/`)。它实际上不应该呈现为文本吗? (2认同)
  • 这取决于您放置 // 注释的位置。Razor 可以有 C# 部分(以 @ 开头)、Html 甚至 JS 部分、脚本部分。C# 注释不会被服务器回显。js 和 html 中的注释将发送到浏览器。 // Html 中的注释将被视为文本,并且可能对最终用户可见。 (2认同)

sob*_*ing 15

此注释语法应该适合您:

@* enter comments here *@
Run Code Online (Sandbox Code Playgroud)