net mvc extension cshtml code asp asp.net-mvc-3 razor

asp.net mvc 3 - extension - MVC3 Razor: visualización de html dentro de bloques de código



razor if (5)

Puede agregar texto de la siguiente manera:

@if(Model.foo) { @:Hello World }

Cuando use @ razor, cambie al modo de bloqueo de código. Por lo tanto, debe especificar el texto como se indica arriba.

En mis archivos cshtml tengo muchos bloques con cosas como esta:

@if(Model.foo) { <span>Hello World</span> }

La única razón por la que el lapso está ahí es porque no puedo encontrar otra forma de forzarlo a reconocer que "Hello World" es parte del html a menos que lo rodee en etiquetas html. ¿Hay una buena manera de escapar del código que no implica agregar etiquetas sin sentido a la pantalla?


Puedes usar @: para escapar:

@if(Model.foo) { @:Hello World }

o la etiqueta especial de <text> que no se muestra en la respuesta:

@if(Model.foo) { <text>Hello World</text> }


muchos desarrolladores han proporcionado muchas maneras más arriba ... aquí hay uno más que está funcionando bien en MVC 4 .. Espero que funcione también para MVC 3 ...

@if(Model.foo) { @Html.Label("Hello World") }


<text>Explicit HTML<text> @(Explicit C#)


@if(Model.foo) { @:Hello World }