Dies ist der Lösung von Aaron sehr ähnlich, hat aber nicht das Gewicht einer Sektion (die meiner Meinung nach für größere Inhaltsblöcke als eine einzelne Zeichenfolge gedacht ist). Der einfachste Weg besteht darin, eine Variable mit dem ViewBag zu übergeben.
Drucken Sie in Ihrem Layout einfach die Klasse für das body-Tag sowie alle anderen seitenspezifischen Variablen aus (Seitentitel, zusätzliche css / js-Skripte usw.)
_Layout.cshtml:
%Vor%Dann werden in Ihrer Ansicht gesetzte Variablen an das Layout übergeben:
Index.cshtml:
%Vor%Während Sie vielleicht die volle Kontrolle über das HTML haben, war eine Lösung das, was benötigt wurde, also hier ist eine; -)
In der _layout.cshtml Seite
%Vor%Dies wird nach einem Abschnitt in allen untergeordneten Seiten suchen, sagt aber, keine Sorge, wenn es einen
nicht finden kannDann machen Sie das in Ihren Kindansichten einfach
%Vor%Behalte es in einer Zeile und dann wird das ausgegebene HTML gut aussehen, und du kannst dann auch die Klassennamen erstellen.
%Vor%Diese Idee ist perfekt mit DOM-Ready seitenspezifischem Code, warum nicht Kasse Ссылка
Oder meine erweiterte Version hier Ссылка
Mit meinem Weg können Sie seitenspezifischen Code erstellen, aber Sie können das gesamte Javascript auf separaten Seiten speichern, sodass jede Seite leicht zu verwalten ist. Der letzte Schritt wäre, alle JS in 1 Datei zu verketten und zu minimieren ;-)
Tags und Links asp.net-mvc-3