MVC基礎(很基礎很基礎~~~)

    最近工做比較不忙,準備學習一些東西,做爲一個菜鳥,不斷學習新東西(我不會的東西)充實本身真的很重要,因此整理一下基礎的mvc知識,以備不時之需。呵呵~~web

首先感謝原文做者:QLeelulu的文章http://QLeelulu.cnblogs.com/。下面進入正題服務器

1、什麼是MVC模式架構

MVC(Model-View-Controller,模型—視圖—控制器模式)用於表示一種軟件架構模式。它把軟件系統分爲三個基本部分:模型(Model),視圖(View)和控制器(Controller)。那麼MVC模式和咱們熟悉的WebForm模式有什麼不一樣呢?他的各個部分又是怎樣分工的呢?mvc

imagewebFormasp.net

一個URL請求的是在服務器與該URL對應路徑上的物理文件(ASPX文件或其餘),而後由該文件來處理這個請求並返回結果給客戶端。學習

imageMVC模式spa

在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

而後咱們運行一下項目看看:

image 

3、認識項目

默認的狀況下,項目的目錄結構以下:

image

  • App_Data :這個目錄跟咱們通常的ASP.NET website是同樣的,用於存放數據。
  • Content :這個目錄是建議用來存放一下資源文件的。例如CSS、JS、圖片等等。固然你不肯意的話,徹底能夠不放到這裏來。
  • Controllers :這個目錄是建議將Controller類都放到這裏來,方便管理。Controller類的命名必須以Controller結尾,例如一個名爲Home的Controller則要命名爲HomeController。
  • Models :這個目錄是建議用來存放你的業務實體、數據訪問層代碼的類的。固然,更好的作法我以爲應該是將Models獨立爲一個類庫。
  • Views :在默認狀況下,全部的view文件都必須放到這個目錄下來,每個Controller對應一個子目錄,並且子目錄的命名必須以Controller的命名同樣。例如,HomeController的view就應該放到Home子目錄中。咱們見到Views目錄下還有一個Shared的子目錄,這個子目錄是用於存放一些共享的view的,例如Error.aspx和Site.Master。Controller在Views\ControllerNmae 中找不到指定的view的時候,會到Shared中去尋找。

下面咱們來看一下ASP.NET MVC比較核心的DLL,見下圖紅框部分:

image

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了。

相關文章
相關標籤/搜索