asp.net mvc里的母版頁和自定義控件


    (1)母版頁

    在mvc 樣例程序LogOn.cshtml 里沒有看到<html></html>這樣的標記,我猜他有類似於webform里母版頁的東東,最后發現在Views目錄下,有一個_ViewStart.cshtml 文件,有一句代碼:

@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}

  這段代碼用來指定母版頁的。

  logOn.cshtml 的代碼里沒看到指定母版頁的語句,那么它估計是調用了_ViewStart.cshtml,什么時候調用的,不清楚,大概asp.net mvc默認的吧。

而在_Layout.cshtml 里:

<div id="main">
@RenderBody()
</div>

  @RenderBody 估計是顯示LogOn.cshtml 等頁面內容的吧。

  (2) 用戶控件

  在_Layout.cshtml 里發現了這么一句:

  @Html.Partial("_LogOnPartial")

  Html.Patial 的含義:  Renders the specified partial view as an HTML-encoded string.渲染部分視圖,想來就是用戶控件了。

  還有另外一種寫法:

   @{Html.RenderPartial("_LogOnPartial");}

   看起來上面的簡單好寫,不過兩者還是有區別滴。

 Partial輸出到臨時變量StringWriter ;RenderPartial輸出到HtmlHelper.ViewContext.Writer上(即直接輸出到Response)。

    _Layout.cshtml _LogOnPartial.cshtml 都放在Views/Shared 目錄下,於是乎,我明白了,shared目錄是干嘛的。

好,明白了,asp.net mvc 里母版頁和用戶控件怎么寫,怎么調用啦。

   


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM