2011-08-29 14 views
12

.NET 4, VS 2010, C#, MVC 3.C# - lectura y HTML se presentan a partir de recursos

En mi archivo de recursos, que tengo:

First line.<p />Second line. 

lo estoy leyendo desde el punto de vista a través de Razor:

@Translations.Example 

Pero mi p's se quedan p - en otras palabras, no se representan como HTML.

¿Por qué?

+1

Es un buen punto, por razones de seguridad, que el contenido se procesa codificado de manera predeterminada. Esto evitará una gran cantidad de ataques de inyección de código JS. Cuando usa @ Html.Raw, toma la decisión de procesar contenido en bruto HTML ... y luego se ha asegurado de que el HTML procesado sea seguro. En comparación, si el renderizado no estuviera codificado por defecto, debería asegurarse de que el contenido sea seguro cada vez que un usuario ingrese algo, lo renderice en algún lugar ... doloroso y arriesgado ya que una buena proporción de desarrolladores "olvidan" asegurar la seguridad de entrada del usuario –

+0

Básicamente, solo llame a Html.Raw cuando sepa que el contenido es seguro. –

Respuesta

18

hacer

@Html.Raw(Translations.Example) 
+0

Gracias también ... – Alex

4

intenta utilizar el método Raw extensión

@Html.Raw(Translations.Example) 
+0

¡Exactamente! Gracias. – Alex

0

Prueba esto: @ Html.Raw (YourResourceFile.KeyInTheResourceFile)

Cuestiones relacionadas