MVC基础知识
1.MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫
2.Model(模型)是應用程序中用于處理應用程序數據邏輯的部分。 通常模型對象負責在數據庫中存取數據。主體
3.View(視圖)是應用程序中處理數據顯示的部分。展示相關數據
通常視圖是依據模型數據創建的。
4.Controller(控制器)是應用程序中處理用戶交互的部分。組織
通常控制器負責從視圖讀取數據,控制用戶輸入,并向模型發送數據。
MVC的優點
(1) 高內聚,低耦合(2)提高代碼的重用率(3)提高開發效率,加快了程序開發有利于程序開發(4)提高程序的可維護性
MVC的缺點
(1增加系統結構和實現的復雜性(2)視圖與控制器間的連接過于緊密(3)視圖對模型數據的訪問效率較低(4)某些界面工具或構造器不支持MVC構架
Lambda表達式
(1) ???varlist = new []{“aa”,”bb”,”cc”};??????? 輸入變量
(2) ???varresult =Array.FindALL(list,s = >(s.IndexOf(“a”)>-1));? Lambda 運算符
(3) ???foreach(var v in result)?????? Lambda語句?????
(4) ???Console.WriteLine(v);
?
一、控制器層功能
(1) 模型層和視圖層之間溝通的橋梁
命名規則??? 控制器名稱+Controller
ASP.NET主要用途
(1) 對比瀏覽器傳入的HTTP請求
(2) 將適當的網址返回給瀏覽器進行顯示
一、非MVC控制器類路由怎么解析
需要非MVC Router 類的網址的入口進而接收這類路由,IgnoreRoute方法
Routes.IGNORoute(“{resource}.axd/{*pathInfo}”);
二、帶單個參數的MVC路由地址的解析
MVC默認路由
routes.MapRoute(
“Default”,??? // 路由名稱
“{controller}/{action}/{id}”,//帶有參數的URL
new? {controller = “Home”,action = “Index”,id =UrlParameter.Optional}? //參數默認值
);其中controller是控制器名稱,action是方法名,id為要傳遞的參數
三、帶多參數的MVC路由地址的解析
routes.MapRoute(
“Default”,??? // 路由名稱
“{controller}/{action}/{id}/{password}”,//帶有參數的URL
new? {controller = “Home”,action = “Index”,id =“11”,password=”22”}? //參數默認值
);
此方法有兩個參數,id和password,new是參數的默認值
一、ASP.NET MVC 執行的生命周期
1.????網址路由比對階段
2.????執行Controller的Action階段
3.????執行View并返回結束頁面
一、????視圖層作用 向用戶提供用戶界面,并負責和用戶進行交互。他的動態數據主要源自控制器層
二、????視圖4種:視圖頁(頁面不可拆分和復用)、布局頁(統一部分界面布局)、視圖布局頁(“繼承”布局頁后,用于不同部分界面布局)、分布頁(精簡結構,復用結構,局部刷新)
三、????視圖引擎? ASPX引擎和 Razor引擎
四、????獲取數據的方式弱類型 強類型 Session Cookies
五、????HtmlHelper類
(1)ActionLink?生成超鏈接???<a></a>
(2)BeginForm???? 生成表單?? <form>
(3)EndForm ????生成表單????</form>
(4)CheckBox???生成復選框 <input type=”checkbox”/>
(5)DropDownList? 生成下拉框 <select></select>
(6)Hidden?生成隱藏輸入框?? <inputtype =”hidden”/>
(7)Label???生成文本???<label></label>
(8)ListBox???生成列表框?<select multiple =”multiple”<option></option>
(9)Password?生成密碼輸入框? ??<input type =”password”/>
(10)???????RadioButton?? 生成單選框?? <inputtype =”radio”/>
(11)???????TextArea? 生成多行文本輸入框 <textarea></textarea>
(12)???????TextBox? 生成文本輸入框 ??<inputtype =”text”/>
一.????Actionresult派生實體類 ? ??
類名 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 返回內容 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?輔助方法
(1)ViewResult ? ? ? ? ? ? ? ? ? ? ?視圖頁、布局視圖頁 ? ? ? ? ? ? ? ? ? ? ? ? ? view
(2)PartialViewResullt ? ? ? ? 分布頁 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?PartialView
(3)ContentResult ? ? ? ? ? ? ? ?文本內容 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Content
(4)EmptyResult ? ? ? ? ? ? ? ? ? ? 空白頁 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 無,直接用NULL
(5)FileStreamResult ? ? ? ? ? ? 通過文件流返回的文件 ? ? ? ? ? ? ? ? ? ? ? ? ? ? File
(6)FileContentResult ? ? ? ? ? ? ?通過byte[]返回的文件 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? File
(7)FilePathResult ? ? ? ? ? ? ? ? ? 通過指定路徑返回的文件 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? File
(8)JavaScriptResult ? ? ? ? ? ? ? ?JavaScript對象 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? JavaScript
(9)JsonResult? JOSN ? ? ? ? ? ? ? ? 對象 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Json
(10)RedirectResult ? ? ? ? ? ? ? ? ?重定向到指定的URL ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Result RedirectPermanent
(11)RedirectToRouteResult ? ?重定向到指定的action ? ? ? ? ? ? ? ? ? RedirectToAction? RedirectToActionPermanent RedirectToRouteRedirectToRoutePermanent
(12)HttpUnauthorizedResult ? ? 登錄界面 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?無
(13)HttpNotFoundResult ? ? ? ? HTTP錯誤404 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?HttpNotFound
?
?
總結
- 上一篇: 网站服务器被访问 io,服务器端被客户端
- 下一篇: c++判断二叉树是否为二叉搜索树_原创