ASP.net MVC基础
簡單了了解了下MVC的基本開發步驟后,又對MVC的語法和模版詳細看看了,小小總結下
對mvc開發,首先是要對布局有個基本的認識。Razor引擎使頁面元素更加清晰
簡單認識下
- @Url.content
?
- 可以加載css和js等文件,統一進行管理和設置
?
如
?
?1 2 3 4 <linkhref="@url.content("~ content="" site.css")"rel="stylesheet" type="text/css"> <scriptsrc="@Url.Content("~/Scripts/jquery-1.7.1.min.js")"type="text/javascript"></script> <scriptsrc="@Url.Content("~/Scripts/jquery-1.7.js")"type="text/javascript"></script> <scriptsrc="@Url.Content("../../Scripts/Highcharts-3.0.1/js/highcharts.js")"type="text/javascript"></script></linkhref="@url.content("~> ?
到了頁面會自動找到相應的js
- @RenderSection("Head", false)
在模板頁中我們會定義一些全局性的CSS,JS等文件,而與具體頁面相關的CSS和JS文件及代碼,我們可以保留在@RenderSection("Head", false)中,它能夠讓頁面通過@section Head{}的形式,將個性化的代碼呈現,其中參數false表示,具體頁面可以不去實現這個section Head塊。
模版頁面定義
?
?1 2 3 ??????<div class="page"> ??@RenderSection("Head", false);??? <!-- 頁面中可以沒有Head節點--> </div><span style="font-family: SimSun;font-size:18px; " class="">?</span> ?
添加一個About.cshtml,
然后就可以在About.cshtml中定義"Head"要呈現的內容
?
?1 2 3 4 5 @section Head{ ??<script> ???????alert("Hello MVC3"); ????</script> ?} ?
- 分部視圖
?
可以是系統插件化 就是可以分離的東西絕對不要讓他們在一起,因為只有每個功能模塊都是單獨的,我們才可以在其他位置重用它 分工合作現在是一個合作的時代,沒有任何一個人可以單獨完成規定的任務而不與別人合作,除非是牛人例外。分部視圖可以帶給我們開發不同模塊中的分工合作。Html.partial和RenderPartial
Html.partial和RenderPartial都是輸出html片段,區別在于Partial是將視圖內容直接生成一個字符串并返回(相當于有個轉義的過程),RenderPartial方法是直接輸出至當前 HttpContext(因為是直接輸出,所以性能好)。因此它們在視圖中的使用方式是不同的
對比分析
@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction,@Html.ActionLink
以上各個方法都是調用然后返回信息
不同點
1、帶有Render的方法返回值是void,在方法內部進行輸出;不帶的返回值類型為MvcHtmlString,所以只能這樣使用:
?
?1 2 @Html.Partial對應 @{Html.RenderPartial(....);} @Html.Action對應 @{Html.RenderAction(....);} ?
2、Html.Partial可以直接提供用戶控件名作為參數,
而Html.Action需要有對應的Action,在Action內部返回PartailResult(即retunPartialView())。
3、對于簡單的沒有任何邏輯的用戶控件,推薦使用Html.Partial;對于需要設置一些Model的用戶控件,推薦使用Html.Action。當然,有Model數據也是可以使用Html.Partial方法的,可以看方法的重載。
Control認識
control是一個抽象類,該類封裝了不少的方法,返回類型很多是引用類型。所以我們在書寫返回值的時候盡可能的去查看父類的方法
如:發現父類的虛方法,那么我們就可以通過control返回以下這些類型。
?
FileContentResultfile()ContentResultcontent()JesonResultjson()PartialViewResultpartialView()ReirectToresultResultRediretToaction()?
小結:
MVC3以后的書寫和語法大大簡化的開發難度,同時在加入的一些分布視圖上,起到了很好的開發效果。學習的難度并沒有增大。本小結是對學習中簡單的認識,還請多多指教。
轉載于:https://www.cnblogs.com/ranran/p/4191931.html
總結
以上是生活随笔為你收集整理的ASP.net MVC基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 从“大数据”到“智能数据”
- 下一篇: 双12众商超沦陷,你是否习惯了扮演观众?