@ Html.Partial,@ Html.Section和@section之间有什么区别?我什么时候应该使用它们?
答案 0 :(得分:0)
@ Html.Partial是将页面拆分为多个部分。如果不填写该部分,该页面将不完整。
@ Html.Section是一个(通常是可选的)部分,通常在布局中定义,继承者可以添加内容。例如,如果他们想要向页面添加额外的脚本,则在默认布局的末尾有一个“脚本”部分,允许页面在内容的末尾注入它。
@section只是在子页面中定义@Html.Section的内容。
例如:
<!-- layout page. -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
</head>
<body>
<div class="container body-content">
Layout content.<br/>
@RenderBody()
</div>
@RenderSection("scripts", required: false)
</body>
</html>
...
<!-- child page -->
@section scripts{
<script src="/Scripts/jquery.signalR-2.2.1.min.js"></script>
}
<div>Child content.</div>
<div>Partial content here: @Html.Partial("~/Views/PartialContent.cshtml")</div>
...
<!-- partial content in PartialContent.cshtml -->
Hello!
结果如下:
Layout content.
Child content.
Partial content here: Hello!