最近工做比較不忙,準備學習一些東西,做爲一個菜鳥,不斷學習新東西(我不會的東西)充實本身真的很重要,因此整理一下基礎的mvc知識,以備不時之需。呵呵~~web
首先感謝原文做者:QLeelulu的文章http://QLeelulu.cnblogs.com/。下面進入正題服務器
1、什麼是MVC模式架構
MVC(Model-View-Controller,模型—視圖—控制器模式)用於表示一種軟件架構模式。它把軟件系統分爲三個基本部分:模型(Model),視圖(View)和控制器(Controller)。那麼MVC模式和咱們熟悉的WebForm模式有什麼不一樣呢?他的各個部分又是怎樣分工的呢?mvc
一個URL請求的是在服務器與該URL對應路徑上的物理文件(ASPX文件或其餘),而後由該文件來處理這個請求並返回結果給客戶端。學習
在MVC中,客戶端的所請求的URL是被映射到相應的Controller去,而後由Controller來處理業務邏輯,或許要從Model中取數據,而後再由Controller選擇合適的View返回給客戶端。.net
2、建立MVC項目3d
vs2010默認是asp.net MVC項目模板,須要下載ASP.NET MVC的安裝程序http://www.microsoft.com/downloads/details.aspx?FamilyId=A24D1E00-CD35-4F66-BAA0-2362BDDE0766&displaylang=en,開始新建項目,這裏我選的mvc3,至於mvc2和mvc3有什麼區別,但願知道的大神能給予答案code
而後咱們運行一下項目看看:
3、認識項目
默認的狀況下,項目的目錄結構以下:
下面咱們來看一下ASP.NET MVC比較核心的DLL,見下圖紅框部分:
System.Web.Routing :URL路由。將一個URL路由到對應的Controller上靠的就是這個。是在HttpModule裏面處理的。
System.Web.Extensions :這個是ASP.NET AJAX的。
System.Web.Mvc: ASP.NET MVC最主要的程序集。在CodePlex上放出源代碼的就是這個DLL。
System.Web.Abstractions :這個程序集是一些相關的基類來的。例如HttpContextBase、HttpRequestBase 等等。
Microsoft.Web.Mvc :這個程序集只要放一些MVC的特性與擴展的方法。在ASP.NET MVC beta版中,這個DLL已經被移除,可是若是你須要用到這個DLL的功能,能夠到這裏下載並引入就能夠了。
咱們徹底能夠在VS10中建一個通常的WebAppliction,而後引入這幾個DLL,再配置一下web.config文件,那麼就能夠成爲一個ASP.NET MVC的Application了。