Come scrivere un commento in una vista Rasoio?


128

Come scrivere un commento in una vista MVC, che non verrà trasmesso all'HTML finale (cioè al browser, alla risposta). Si può fare un commento con:

<!--<a href="https://stackoverflow.com/">My comment</a> -->

ma è visibile nel codice sorgente della pagina nel browser.

È possibile lasciare commenti nei file '.cshtml' solo per uso interno?


5
Guida

2
Trovato un duplicato della mia domanda: stackoverflow.com/questions/3382903/razor-comment-syntax
horgh


1
Possibile duplicato della sintassi del commento
Jon Schneider,

Risposte:


234

Si noti che in genere IDE come Visual Studio eseguirà il markup di un commento nel contesto della lingua corrente, selezionando il testo che si desidera trasformare in un commento e quindi utilizzando il collegamento Ctrl+ K Ctrl+ Co se si utilizza Resharper / Intelli- Scorciatoie di stile J, quindi Ctrl+ /.

Commenti lato server:

Razor .cshtml

Così:

@* Comment goes here *@

.aspx
Per coloro che cercano la sintassi dei commenti lato server della .aspxvista precedente (e Asp.Net WebForms) :

<%-- Comment goes here --%>

Commenti lato client

Commento HTML

<!-- Comment goes here -->

Commento Javascript

// One line Comment goes Here
/* Multiline comment
   goes here */

Come menziona OP, anche se non visualizzati sul browser, i commenti sul lato client verranno comunque generati per il file di pagina / script sul server e scaricati dalla pagina su HTTP, che a meno che non vengano rimossi (ad es. Minificazione), si perderanno I / O e , poiché il commento può essere visualizzato dall'utente visualizzando l'origine della pagina o intercettando il traffico con gli strumenti Dev del browser o uno strumento come Fiddler o Wireshark, può anche rappresentare un rischio per la sicurezza , quindi la preferenza di utilizzare i commenti lato server sul server generato codice (come visualizzazioni MVC o pagine aspx).


2
Hai dimenticato di provarlo))))) Di solito uso Ctrl + E, C e Ctrl + E, U. Grazie mille
horgh,

Questa risposta non è corretta Vedi l'altra risposta a questa domanda.
Zackary Geers,

@ZackaryGeers non sto seguendo: la risposta che fa riflettere sembra aver duplicato la mia risposta originale, e in seguito ho aumentato la risposta alle preoccupazioni dell'OP riguardo alla conservazione dei commenti nascosti per uso interno. Cosa non è corretto
StuartLC,

1
Ma uso la sintassi del commento C # ( //..., /*...*/) nella pagina Rasoio. In realtà non dovrebbe essere reso come testo?
facepalm42

1
Dipende da dove si inserisce il // commento. Rasoio può avere sezioni C # (indicate da un inizio @), sezioni HTML e persino sezioni JS Sezioni di script. I commenti C # non verranno ripetuti dal server. I commenti in js e html verranno inviati al browser. // I commenti in html verranno considerati come testo e saranno probabilmente visibili all'utente finale.
StuartLC,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.