@section
służy do definiowania treści, które są zastępowane z widoku współdzielonego. Zasadniczo jest to sposób na dostosowanie udostępnionego widoku (podobnie do strony wzorcowej w formularzach sieci Web).
Może się okazać, że artykuł Scotta Gu na ten temat jest bardzo interesujący .
Edycja: na podstawie dodatkowego wyjaśnienia pytania
@RenderSection
Składnia idzie do podzieliła pogląd, takich jak:
<div id="sidebar">
@RenderSection("Sidebar", required: false)
</div>
Zostanie to następnie umieszczone w Twoim widoku za pomocą @Section
składni:
@section Sidebar{
}
W MVC3 + możesz albo bezpośrednio zdefiniować plik układu, który ma być używany dla widoku, albo możesz mieć domyślny widok dla wszystkich widoków.
Typowe ustawienia widoku można ustawić w _ViewStart.cshtml, który definiuje domyślny widok układu podobny do tego:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
Możesz również ustawić widok udostępniony, aby był używany bezpośrednio w pliku, na przykład index.cshtml bezpośrednio, jak pokazano w tym fragmencie.
@{
ViewBag.Title = "Corporate Homepage";
ViewBag.BodyID = "page-home";
Layout = "~/Views/Shared/_Layout2.cshtml";
}
Istnieje wiele sposobów dostosowania tego ustawienia za pomocą kilku innych wymienionych w tej odpowiedzi SO .