2010-12-07 9 views
6

Ich bin ein Projekt von MVC 2 zu MVC3 und der Rasierer-Ansicht-Engine zu migrieren.Razor View Syntax erkennt das "@" in einem HTML-Attribut nicht

In MVC 2, würde ich die folgende html hat:

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

Wenn Rasiermesser, ich folgende versucht, die den wörtlichen Text "[email protected]()" macht, wenn ich will del_1.

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

um das Problem zu bekommen, habe ich:

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

Gibt es weg Rasiermesser Arbeit mit dieser Syntax zu machen?

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

Antwort

11

Sie finden das @() um Ihr spezielles Modell Wert wie so verwenden, sind verwenden, Der Grund hierfür ist, dass die [email protected] aussieht wie eine E-Mail-Adresse für den Parser und standardmäßig versucht der Parser, E-Mail-Adressen zu ignorieren, so dass Sie nichts Albernes tun müssen ke [email protected]@doe.com als E-Mails sind häufig genug, dass es wäre ärgerlich, jedes Mal zu tun. Die Leute, die an dem Rasiermesser-Parser arbeiteten, dachten nur: "Wenn es wie eine E-Mail aussieht, ignoriere es". Deshalb hast du dieses spezielle Problem.

Verwandte Themen