日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
技術(shù)高手講評ASP.NETMVC1.0

最近正在考慮是否在我們的企業(yè)級應(yīng)用中使用ASP.NET MVC 1.0框架,因此會一直找使用它的理由,希望大家在關(guān)注技術(shù)的同時(shí),結(jié)合企業(yè)應(yīng)用談?wù)勛约旱目捶ā?/p>

成都創(chuàng)新互聯(lián)基于成都重慶香港及美國等地區(qū)分布式IDC機(jī)房數(shù)據(jù)中心構(gòu)建的電信大帶寬,聯(lián)通大帶寬,移動(dòng)大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業(yè)綿陽服務(wù)器托管報(bào)價(jià),主機(jī)托管價(jià)格性價(jià)比高,為金融證券行業(yè)服務(wù)器托管,ai人工智能服務(wù)器托管提供bgp線路100M獨(dú)享,G口帶寬及機(jī)柜租用的專業(yè)成都idc公司。

1、MVC的組成

Models:訪問數(shù)據(jù)庫,裝載數(shù)據(jù)、處理業(yè)務(wù)邏輯。在項(xiàng)目中體現(xiàn)為數(shù)據(jù)實(shí)體類加業(yè)務(wù)代理類。

Views:顯示數(shù)據(jù),用戶界面。在項(xiàng)目中體現(xiàn)為aspx頁面,偶爾可以加上code-behind。

Controller:按路由規(guī)則將請求的數(shù)據(jù)傳送給指定頁面,用于顯示;也可以把用戶輸入的數(shù)據(jù)傳遞給邏輯處理類。它可以包含簡單的驗(yàn)證邏輯。不應(yīng)包含數(shù)據(jù)訪問邏輯。

2、為何使用MVC

提出MVC的目的無非是提高開發(fā)效率、提高可測試性。官方的ASP.NET MVC 1.0指南中指出(以下簡稱指南),基于MVC的Web應(yīng)用程序有如下優(yōu)點(diǎn):

[1]對復(fù)雜的程序管理更方便

It makes it easier to manage complexity by dividing an application into the model, the view, and the ontroller.

[2]在開發(fā)上有更高的可控性

It does not use view state or server-based forms. This makes the MVC framework ideal for developers who want full control over the behavior of an application.

[3]Routing使軟件設(shè)計(jì)有更多靈活性

It uses a Front Controller pattern that processes Web application requests through a single controller. This enables you to design an application that supports a rich routing infrastructure.

[4]更加適合測試驅(qū)動(dòng)開發(fā)

It provides better support for test-driven development (TDD).

[5]團(tuán)隊(duì)開發(fā)項(xiàng)目中有更高的可控性

It works well for Web applications that are supported by large teams of developers and Web designers who need a high degree of control over the application behavior.

同時(shí)MVC框架還有以下特點(diǎn):

[1]將應(yīng)用程序分成各個(gè)組成部份,更有利于測試。MVC框架是基于接口的,這樣可以利用MOCK方式來替換你的實(shí)際類;做單元測試的時(shí)候,也可以不運(yùn)行Contrllers,這樣的測試就更快更靈活。

[2]MVC框架是可擴(kuò)展的,你可以自己設(shè)計(jì)并替換視頻引擎、URL導(dǎo)向規(guī)則、Action的參數(shù)序列等等。同時(shí)MVC框架也支持依賴注入和控制反轉(zhuǎn),你可以從外部注入實(shí)例,而不用讓類自己創(chuàng)建實(shí)例,你還可以通過配置文件的方式創(chuàng)建實(shí)例,這樣使得測試更方便。

[3]強(qiáng)大的URL映射組件使得你的應(yīng)用程序的URL更易理解,同時(shí)具備搜索能力。你的URL不必包括文件路徑,這樣的設(shè)計(jì)很適合自定義查詢引擎和REST架構(gòu)。

[4]MVC框架仍然支持ASP.NET中的頁面、用戶控件、母版頁作為視圖的模板;同時(shí)你也還可以使用嵌套母版頁、行內(nèi)表達(dá)式(in-line expressions<%= %>)、服務(wù)器端控件、模板、數(shù)據(jù)綁定、本地化等等屬于ASP.NET已有的東西。

[5]同時(shí)ASP.NET中的FORM驗(yàn)證、Windows驗(yàn)證、URL授權(quán)、Membership、角色、輸出、數(shù)據(jù)緩存、Session、Profile 狀態(tài)管理、配置、Provider框架等特性在MVC框架中仍然是可用的。

小結(jié):ASP.NET MVC 1.0框架是基于ASP.NET的,所以他包括了ASP.NET中的幾乎所有特性。同時(shí)他為設(shè)計(jì)人員提供了一套測試的方案(當(dāng)然這是所有語言平臺MVC模式的共性)。在安裝了框架的VS2008中還增加了不少功能,可以方便地添加Views、Models、Controllers。

3、與三層結(jié)構(gòu)的ASP.NET應(yīng)用程序比較

與普通ASP.NET比較而言,***的區(qū)別還是在于前臺開發(fā),后臺包括的數(shù)據(jù)庫訪問、邏輯處理與以往的方式?jīng)]有明顯區(qū)別,在MVC框架中,這些統(tǒng)稱為Model。而三層結(jié)構(gòu)中,這些可以稱為數(shù)據(jù)訪問層與邏輯處理層。

[1]頁面開發(fā)

用這種模式開發(fā)的站點(diǎn),光看頁面的代碼的確比以往少一些,但它更多地使用了頁面腳本(<% ... %>)用于顯示數(shù)據(jù)。在指南中并未提到不推薦使用服務(wù)器端控件,但是它提供了大量的HTML HELPER,而且還允許你自己添加Helper,比如DataGridHelper,所以在MVC框架中使用這些Helper會更方便些,不過這對于熟練工來說應(yīng)該影響不大,因?yàn)閷?shí)際開發(fā)中我們更多使用的是Ctrl+C/Ctrl+V,復(fù)制幾個(gè)標(biāo)簽和復(fù)制幾個(gè)Helper方法所花的時(shí)間差不多??赡軐τ谛率謥碚f,如果對標(biāo)簽不熟悉的話,用這些Helper的速度會快些,但是這樣會影響新手掌握標(biāo)簽,真是矛盾吶。

[2]數(shù)據(jù)提交

普通的ASP.Net開發(fā),在提交數(shù)據(jù)的時(shí)候可能還需要通過設(shè)置數(shù)據(jù)綁定,或者在code-behind里寫封裝代碼;而在MVC中,框架自動(dòng)幫助你將頁面上填寫的數(shù)據(jù)封裝到事先指定的Model中,數(shù)據(jù)提交操作在MVC框架挺方便。而且在普通ASP.NET頁面中,經(jīng)常會出現(xiàn)某個(gè)屬性無法綁回去的情況,這點(diǎn)在MVC中應(yīng)該可以得到解決。指南中提到了Routing的使用使得MVC框架下的應(yīng)用程序在操作自定義查詢時(shí)變得更方便,實(shí)際上在查詢方面跟普通方式并沒有多大區(qū)別,都是對封裝好的類進(jìn)行解析。至于“URL更容易理解”,現(xiàn)在應(yīng)用程序都是從界面上點(diǎn)擊來實(shí)現(xiàn)操作,很少有人會關(guān)注URL本身吧,所以這個(gè)優(yōu)點(diǎn)不算優(yōu)點(diǎn)。

[3]單元測試

從測試上講,MVC框架確實(shí)做得不錯(cuò),若用MOCK方式測試可以更方便,一個(gè)好的WEB應(yīng)用程序設(shè)計(jì)就應(yīng)該將頁面呈現(xiàn)與邏輯分開,這點(diǎn)普通ASP.NET應(yīng)用程序也是可以做到的,關(guān)鍵在于設(shè)計(jì)。

[4]其它

MVC框架在驗(yàn)證、母版頁這些地方有幾個(gè)新特性,但與普通ASP.NET的方式大同小異,因此不仔細(xì)說了。


文章名稱:技術(shù)高手講評ASP.NETMVC1.0
標(biāo)題路徑:http://www.5511xx.com/article/dpgoppg.html