2010-12-07 19 views
6

Estoy migrando un proyecto de MVC 2 a MVC3 y el motor de vista de maquinilla de afeitar.Razor View La sintaxis no reconoce la "@" en un atributo de HTML

En MVC 2, que tendría el siguiente código HTML:

<div id="del_<%= Model.ActivityID.ToString() %>"></div> 

Al utilizar la maquinilla de afeitar, he intentado lo siguiente, que hace que el texto literal "[email protected]()" cuando quiero del_1.

<div id="[email protected]()"></div> 

para moverse por el tema, he utilizado:

<div id="@Model.ActivityID.ToString()_del"></div> 

¿Hay distancia para hacer el trabajo de afeitar con esta sintaxis?

<div id="[email protected]()"></div> 

Respuesta

11

que tendrá que utilizar el @() alrededor de su valor determinado modelo de este modo:

<div id="[email protected](Model.ActivityID.ToString())"></div> 

El Esto se debe a que el [email protected] parece una dirección de correo electrónico al analizador y, de forma predeterminada, el analizador intenta ignorar las direcciones de correo electrónico para que no tenga que hacer algo tonto. ke [email protected]@doe.com como los correos electrónicos son lo suficientemente comunes que sería molesto hacer todo el tiempo. Así que las personas que trabajan en el analizador de navaja solo pensaron: "si parece un correo electrónico, ignórelo". Entonces es por eso que estás teniendo este problema en particular.

2
<div id="[email protected](Model.ActivityID.ToString())"></div> 

En caso de que no se ve el truco: utilizar @( )

Cuestiones relacionadas