2012-03-25 7 views
1

Ich versuche, diese einfache Sache zu verstehen, aber es ist mir wirklich peinlich, so eine neue Frage zu stellen. Ich bin so an mvc2 gewöhnt und bin vor ein paar Tagen in mein erstes mvc3-Projekt eingestiegen. ohnehin die Frage ist, wie kann ich Modellwert in einem Klassennamen oder die ID-Modellwert im Klassennamen hinzufügen?

<div class="remove-MODEL.ID">body...</div> 

in MVC2 seinem einfachen

<div class="remove-<%= Model.Id %>">body...</div> 

meines aktuellen Code und versuchen ist (WORKS)

<div class="[email protected]">body...</div> 

hinzufügen Ich habe stattdessen versucht, ein String-Format (WORKS)

ich habe wirklich keine Ahnung, und wie ich sagte so eine einfache Sache wird das härteste :)

EDIT
Es ist wirklich seltsam, aber meine dritte und vierte Vorschlag war nach ein paar Versuchen

Erik Philips Antwort bekam Infos zu diesem Problem.

+0

Wenn Sie die Rasiermesseransicht-Engine verwenden, sieht Ihr Vorschlag '

body...
' gut aus. Haben Sie Fehler? –

+0

kein Fehler es schreibt nur die HTML wie es in der Ansicht ist, 'remove- @ Model.Id' es nimmt nicht den Modellwert. –

+0

Können Sie noch etwas anderes vom Modell auf die Seite drucken? –

Antwort

1

Dies ist eine der kleineren Einschränkungen der Razor-Engine. Das Problem liegt darin, dass die Engine feststellen kann, ob das @ eine Rasierersyntax oder nur normaler HTML-Text ist. Dieses Beispiel kann häufig auftreten, wenn die Ausgabe des Rasierers <prefixvalue>@<model>.<value> ist, da dies dem E-Mail-Ausdruck <name>@<emailprovider>.com ähnlich ist. Sie können den Motor zwingen, eine Rasierersyntax anzunehmen, indem Sie den Ausdruck in Klammern umschließen (z. B. @(model.id)).

+0

gute info Erik danke –

0

In meinem Projekt verwende ich diesen Code:

<div class="[email protected](0).id">body...</div> 

Und es funktioniert gut.

+0

ja ich benutze das für mvc2, aber für mvc3 ist es nicht die gleiche Syntax bei der Verwendung von Rasierer –

+0

Sorry, aktualisiert den Code dies bereits in meinem Projekt arbeiten –

+0

ich benutze diesen Code für ID-Attribute zu. –

Verwandte Themen