一塊兒學習MVC(3)Views的學習

     

  1. _ViewStart.cshtml、_Layout.cshtml、Index.cshtml三個頁面加載時候的前後順序就是:

    _Layout.cshtml html

    ViewStart.cshtml 框架

    Index.cshtml 佈局

         

  2. 每一個View下Controller對應的文件夾中,能夠添加本身的_ViewStart.cshtml,用來指定獨自使用的佈局視圖,採起就近原則(替View代根目錄中的);

    並且,_Layout框架的賦值語句:Layout="。。。",也能夠加到任意一個View文件中,做爲此文件的單獨佈局框架。 ui

         

  3. Styles.Render(""),調用CSS。<link href="" rel="stylesheet"/>,需在BundleConfig.cs中進行設置。

    Scripts.Render(""),調用JS。<script src=""></script>,需在BundleConfig.cs中進行設置。 spa

    @RenderBody(),用於佔位,調用主顯示頁面。如在路由類裏設置了Home,Index.則在此處調用index.cshtml htm

    @Html.Partial("_Navigation"),調用分佈視圖,如導航頁等。可用於配合AJAX的局部刷新 blog

    @RenderSection("scripts", required: false),佔位節點。如爲false,則爲不是必須。可進行佔位顯示。 ip

    一個Layout能夠包含多個分塊(setions),例如,能夠爲Layout添加Footer分塊 路由

         

        <footer>@RenderSection("Footer")</footer> io

         

        在使用這個Layout的View中,須要加入@section Footer{..}代碼,來設置本身的footer,如:

         

        @section Footer{ @@Copyright 2001-2015, All Right Received. }

         

        可是,大多數時候,但願section都是可選的,可將其改成:

         

        <footer>@RenderSection("Footer", required: flase) </footer>

         

        更爲通用的方式,是在設置可更改的Section時,配備一個默認的Section外觀:

         

        <footer>

         

          @if (IsSctionDefined("Footer"))

         

          {

         

            RenderSection("Footer");

         

          }

         

          else

         

          {

         

            <span>This is the default footer. </span>

         

          }

         

        </footer>

相關文章
相關標籤/搜索