How to write a comment in a mvc view, that won't be transmitted to the final html (i.e.,to browser, to response). One can make a comment with
<!--<a href="/">My comment</a> -->
But it is visible in the page source code in browser.
Is it possible to leave comments in cshtml files only for internal use?
Note that in general, IDE's like Visual Studio will markup a comment in the context of the current language, by selecting the text you wish to turn into a comment, and then using the ctrl-k ctrl-c shortcut, or if you are using Resharper / Intelli-J style shortcuts, then Ctrl /
.
Server side Comments:
Razor .cshtml
Like so:
@* Comment goes here *@
.aspx
For those looking for the older .aspx
view (and Asp.Net WebForms) server side comment syntax:
<%-- Comment goes here --%>
Client Side Comments
HTML Comment
<!-- Comment goes here -->
Javascript Comment
// One line Comment goes Here
/* Multiline comment
goes here */
As OP mentions, although not displayed on the browser, client side comments will still be generated for the page / script file on the server and downloaded by the page over HTTP, which unless removed (e.g. minification), will waste I/O, and, since the comment can be viewed by the user by viewing the page source or intercepting the traffic with the browser's Dev Tools or a tool like Fiddler or Wireshark, can also pose a security risk, hence the preference to use server side comments on server generated code (like MVC views or .aspx pages).
This comment syntax should work for you:
@* enter comments here *@