Domanda

Io sono la migrazione di un progetto dal MVC 2 a MVC3 e il motore di visualizzazione rasoio.

In MVC 2, avrei il seguente codice HTML:

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

Quando si utilizza un rasoio, ho provato la seguente, che rende il testo letterale "del_@Model.ActivityID.ToString ()" quando voglio del_1.

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

Per aggirare il problema, ho usato:

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

C'è via per rendere il lavoro rasoio con questa sintassi?

<div id="del_@Model.ActivityID.ToString()"></div>
È stato utile?

Soluzione

Si dovrà utilizzare il @() attorno al particolare valore del modello in questo modo:

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

La ragione di questo è perché gli sguardi del_@Model.ActivityID come un indirizzo email al parser e per impostazione predefinita i tentativi di ignorare parser indirizzi e-mail in modo da non fare qualcosa di stupido come john@@doe.com come le email sono abbastanza comuni che sarebbe fastidioso per fare ogni volta. Così le persone che lavorano sul parser rasoio appena capito: "se sembra una e-mail, ignorarlo". Ecco, questo è il motivo per cui si sta avendo questo particolare problema.

Altri suggerimenti

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

Nel caso in cui non hai visto il trucco: uso @( )

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top