2012-10-24 4 views
22

Ich spiele hier ein wenig auf, als ich direkt von MVC2 zu MVC4 ging, um Razor und alles andere auf einmal zu lernen.Wie definieren Sie ein Layout für bestimmte Bereiche in ASP.Net MVC 4?

Ich benutze einen Admin-Bereich in dieser neuen Anwendung, und ich bemerkte, wenn ich auf den Controller im Admin-Bereich ging es ohne Layout gerendert. Ich habe versucht, _Layout.cshtml in den freigegebenen Ansichtsordner des Bereichs zu kopieren, aber es wird immer noch ohne Layout gerendert. Ich habe versucht, zu suchen, kann aber keine Informationen darüber finden, wie Sie ein Layout für einen Bereich festlegen.

Ich weiß, dass ich dies auf eine bestimmte Ansicht tun, aber ich will es für den gesamten Bereich einmal einstellen

@{ 
    ViewBag.Title = "Index"; 
    Layout = "~/Views/Shared/_Layout.cshtml"; 
} 

Antwort

34

Sie haben Datei _ViewStart.cshtml unter Ordner Views in Ihrer Nähe haben. Diese Datei würde so etwas darin haben:

@{ 
    Layout = Request.IsAjaxRequest() ? null : "~/Areas/Admin/Views/Shared/_Layout.cshtml"; 
} 
+0

Ah ich sehe, ich missverstanden den Zweck dieser Datei. – Jhorra