Pregunta

Estoy creando una muestra de ASP.NET MVC 3 Razor sitio usando como punto de vista motor. La sintaxis de afeitar comienza con carácter @ por ejemplo, @RenderBody(). Si escribo @test en mi página cshtml me da error de análisis

  

CS0103: El 'test' nombre no existe en el contexto actual

¿Cómo escapar de carácter '@'?

¿Fue útil?

Solución

@@ debería hacerlo.

Otros consejos

Razor @ de escape char a los símbolos ...

<img src="..." alt="Find me on twitter as @("@username")" />

o

<img src="..." alt="Find me on twitter as @("@")username" />

<text></text> uso o la manera más fácil @:

@Html.Raw("@") me parece ser aún más fiable que @@, ya que no en todos los casos @@ escapará.

Por lo tanto:

<meta name="twitter:site" content="@twitterSite">

sería:

<meta name="twitter:site" content="@Html.Raw("@")twitterSite">

En lugar de entidad HTML prefiero el uso de @Html.Raw("@").

@@ es el carácter de escape para @ en las vistas de la maquinilla de afeitar como se indicó anteriormente.

Razor embargo, no tratar de resolver cuando un '@' es simplemente un código de '@' y donde las marcas C # (o VB.Net). Uno de los usos principales para esto es para identificar direcciones de correo electrónico dentro de una vista Razor - no debería ser necesario escapar el carácter @ en una dirección de correo electrónico.

En la pregunta sobre @RazorCodePart1 @@ @RazorCodePart2, es necesario la secuencia:

@RazorCodePart1 @:@@ @RazorCodePart2

Lo sé, parece un poco extraño, pero funciona y le dará el carácter literal '@' entre los bloques de código.

Sólo tenía el mismo problema. Declaré una variable poniendo mi texto con el @.

@{
   var twitterSite = "@MyTwitterSite";
}

...

<meta name="twitter:site" content="@twitterSite">

este trabajo para mí

<meta name="author" content="Alan van Buuren @("@Alan_van_Buuren")">

O puede utilizar: @@ Alan_van_Buuren

: D

He intentado todas las opciones anteriores y ninguno funcionó. Esto es lo que hice que trabajaba:

@{
    string str = @"[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$";
}

<td>Email</td>
<td>
   <input type="text" id="txtEmail" required name="email" pattern=@str /> 
</td>

I creó una varible cadena y se pasa todo el código patrón de expresión en él, entonces se utiliza la variable en el html, y Razor estaba bien con eso.

Se puede utilizar @@ para este propósito. Al igual que var email = firstName + '\@@' + domain;

sólo tiene que añadir una variable en el archivo CSHTML var myVariable = @"@";

y añadirlo a su disposición <span class="my-class"><a href="@myVariale" target="_blank" >link text</a></span>

no pude conseguir cualquiera de estos para el trabajo dentro de mi atributo de marcador de posición, por lo que utiliza XML carácter especial.

<input type="text" placeholder="fex: firstname&#64;lastname.com"/>

Vea más ejemplos aquí. https://www.dvteclipse.com/documentation/svlinter/How_to_use_special_characters_in_XML.3F. html

En realidad @ debe ser utilizado con la maquinilla de afeitar Palabras clave de sintaxis o de la variable / modelo para enlazar un valor.

Por ejemplo: si la prueba se le asigna el valor es decir @ {var test = "ABC"} entonces se puede obtener el valor de configuración como @test cualquier lugar es la página cshtml en parte html. de lo contrario, el uso simple como @ Html.DisplayName ( "test")

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top