之前寫了點Asp.Net MVC的概念,沒有實際上系統的介紹Asp.Net MVC開發方式與WebFrom 開發方式的區別。昨晚上看了訪問自己blog的入口的搜尋關鍵詞大部分是衝著MVC來的,就有了衝動將自己淺薄的知識寫在這裡,供初學者有個淺顯的認識。歡迎高手拍磚指導,希望能把一篇入門的文章寫的盡善盡美。
WebFrom的一個事件開發模型
瀏覽者發送一個url請求,如果不在使用url重寫機制或靜態化技術的話,url請求的是具體一個xx.aspx頁面。iis將url請求交給.Net Freamwork處理,這時經過複雜的Asp.Net生命週期 到執行我們 xx.aspx.cs檔案,我們在代碼檔案中編寫一些調用商務邏輯層處理資料的代碼,然後再將處理的結果返回一個新的視圖ViewPage交給視圖引擎將aspx模板替換成具體的html標籤裝配成html然後寫回用戶端。如所示這個流程:
在WebFrom中我們由於ViewState協助可以實現事件開發模型,但是aspx和asxp.cs之間這種codebehind技術並沒有實現完全的代碼和視圖的分離,我們後台代碼還是去控制view視圖具體的顯示邏輯,還是存在一個強的耦合。
Asp.Net MVC開發模型
在Asp.Net MVC中“請求——處理——響應”的模型變得更加的簡單和分離的很好。View和Controller之間不再有強的耦合,而且頁面沒有複雜的生命週期,交給我們開發人員就是一個簡單的請求處理響應模型,非常的清爽。
使用者的請求→IIS→.Net Freamwork→Route【.Net Freamwork 4.0 版本提供的Url路由群組件】→Controller【控制器:處理使用者的請求,從model中擷取資料,並將資料交給View】→View→視圖引擎【將資料裝配到視圖中,並產生新的html】→用戶端
如所示Asp.Net MVC的開發模型:
看一下一個普通的Asp.Net MVC項目的項目:
希望這篇簡單的開發模型的介紹能對你學習Asp.Net MVC有所協助。也歡迎高手有什麼意見或我哪地方說的不正確進行拍磚讓我及時改正。
初識Asp.Net MVC2.0初識Asp.Net MVC2.0【續】
Asp.Net MVC2.0 Url 路由入門---執行個體篇
Asp.Net MVC2.0 Url 路由入門
Asp.Net MVC3 簡單入門第一季(一)環境準備
Asp.Net MVC3 簡單入門第一季(二)詳解Asp.Net MVC3項目
Asp.Net MVC3 簡單入門第一季(三)詳解Controller之Filter
Asp.Net MVC3 簡單入門第一季(四)詳解Request Processing Pipeline