22- RenderBody和RenderSection的使用

RenderBody和RenderSection的使用

RenderBody会把当前视图所有的内容除了RenderSection中的部分 全部都替换到当前视图使用的布局视图的RenderBody里面。

RenderSection 是指明一个部分。这一部分 可以替换到布局视图的某一个地方。

一个布局中可以有多个RenderSection

在布局视图中@RenderBody() 直接写就可以了

但是RenderSection 则需要指明名称还有是否必须。

@RenderSection("Scripts", required: false)Code language: JavaScript (javascript)

比如这里意思是我这个seciton是叫做Scripts名称 并且它不是必须 也就是说 你在action视图中 可以不给这个部分也可以。

在非布局视图中 section的位置任意的。但是要符合语法。比如写在C#代码里面。

@section Scripts {

    <h1>这里是就是部分视图的内容 可以支持razro语法 也可以有潜入的C#</h1>
    <h1>@currentUser.Name</h1>
    @if (true)
    {
        <h1>FoxDevelop</h1>
    }
}Code language: HTML, XML (xml)

补充

我们的这个Scripts部分 其实它愿意是为了让我们如果在视图中 需要引入当前页面的特殊js文件的话 那么可以在@section Scripts {} 这里面引入

@section Scripts {
    <script src="~/js/site.js"></script>
}Code language: HTML, XML (xml)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注