asp.net – RenderBody和RenderSection之间的区别

在MVC / Razor语法中,我试图理解为什么我们需要@RenderBody。

例如(从example开始的代码)

<html>
    <head>
        <Meta charset="utf-8" />
        <title>My WebSite</title>
        <style>
            #container { width: 700px; }
            #left { float: left; width: 150px; }
            #content { padding: 0 210px 0 160px; }
            #right { float: right; width: 200px; }
            .clear { clear: both; }
        </style>
    </head>
    <body>
        <div id="container">
            <div id="left">
                @RenderSection("left",required:false)
            </div>
            <div id="content">
                @RenderBody()
            </div>
            <div id="right">
                @RenderSection("right",required:false)
            </div>
            <div class="clear"></div>
        </div>
    </body>
</html>


@{
      Layout = "~/_3ColLayout.cshtml";
}

<h1>Main Content</h1>

@section left {
    <h1>Left Content</h1>
}

@section right {
    <h1>Right Content</h1>
}

为什么我不能简单地使用@RenderSection的一切,像这样:

<div id="content">
     @RenderSection("Body",required:true)
</div>

@section Body{
    <h1>Body Content</h1>
}

解决方法

只是因为方便。渲染身体是你最有可能做的事情,所以它有一个专门的功能。让你不要为身体声明一个@section,并提供一个更容易调用功能

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....