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