c# tutorial MVC @RenderSection "-Abschnitte wurden definiert, wurden aber noch nicht" gerendert ". Wenn mehrere Ebenen der Seite



mvc razor controller (1)

Sie müssen den Abschnitt in _MainPage.cshtml neu _MainPage.cshtml .

_BootstrapLayout.cshtml

@RenderSection("scripts", false)

_MainPage.cshtml

@section scripts
{
   @RenderSection("scripts", false)
}

Index.cshtml

@section scripts
{
   <script>
     // etc.
   </script>
}

Ich arbeite mit MVC v4.
Ich habe eine '_BootstrapLayout'-Seite, die alle Twitter-Bootstrap-Sachen definiert, eine Hauptseite, die das Site-Layout definiert, Navbar usw. und Seitenseiten, die von der Hauptseite erben.

_BootstrapLayout.cshtml

_MainPage.cshtml @ {Layout = "~ / Ansichten / Freigegeben / _BootstrapLayout.cshtml"; }

Index.cshtml @ {Layout = "~ / Ansichten / Freigegeben / _MainPage.cshtml";}

Also Hauptseite -> Hauptseite -> Seite Seite (n)

Die Seite _BootstrapLayout enthält eine Rendection für Skripts

@RenderSection("scripts", required: false)

Ich möchte der Index.cshtml-Seite einen Skriptabschnitt hinzufügen, aber wenn ich das tue, erhalte ich die Ausnahme

@section scripts {
    <script type="text/javascript">

        $(document).ready(function () {
...

        });

    </script>
}

Die folgenden Abschnitte wurden definiert, wurden aber nicht für die Layoutseite "~ / Views / Shared / _MainPage.cshtml": "scripts" gerendert.

Also habe ich dem _MainPage.cshtml ein leeres @section Skript hinzugefügt, immer noch das gleiche Problem? Selbst wenn ich dem Abschnitt _MainPage-Skripte Code hinzufüge, erhalte ich immer noch denselben Fehler. Es spielt keine Rolle, wo ich die @section in _MainPage einfüge, bekomme immer noch den gleichen Fehler.

Wenn ich den Abschnitt absichtlich nicht schließe (dh die} lösche), dann erhalte ich einen Fehler, der anzeigt, dass der Abschnitt falsch ist, also analysiert er den Abschnitt in _MainPage.

Wie kann ich @RenderSections für Skripts auf den Website-Seiten in diesem Fall verwenden?





asp.net-mvc-4