2017-04-07 112 views
0

@ Html.Partial,@ Html.Section和@section之間的區別是什麼?我應該什麼時候使用他們每個人?Html.Partial和@section MVC

+0

歡迎來到StackOverflow。你的問題非常廣泛。您可以通過簡單的谷歌搜索找到關於您所問的主題的大量教程。請提出更具體的問題(與問題的相關細節)。另請花點時間閱讀[如何創建最小,完整和可驗證示例](http://stackoverflow.com/help/mcve) – Shyju

回答

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!