程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> ASP.NET MVC基礎

ASP.NET MVC基礎

編輯:ASP.NET基礎

一、MVC與ASP.NET MVC基礎概念

MVC是Model-View-Controller的縮寫.
MVC將應用程序劃分為3大組件:模型\視圖\控制器.
MVC不是ASP.NET所特有,它只是一種開發理念.java中的struts2也是一種MVC模型.
ASP.NET MVC從2008年發布1.0版以來,截至2014年ASP.NET MVC最新版本已經是5.0.
ASP.NET MVC從1.0版開始,就已經開放源代碼(源碼地址:aspnetwebstack.codeplex.com).
ASP.NET MVC官網地址:http://www.asp.net/mvc

二、MVC三大組件的相互關系

在控制器中可以直接調用視圖和模型

在視圖中可以調用模型.

模型不能調用視圖

模型能夠限定視圖中使用的數據,但視圖中使用的模型應由控制器提供

在視圖中可以調用控制器(通過視圖中表單的提交和點擊超鏈接的方式調用)

三、ASP.NET Webform模型和ASP.NET MVC模型的關系

二者都是基於ASP.NET Web框架構建的開發模型.所以ASP.NET中的一些功能可以被二者公用.

Webform編程模型是典型的以事件驅動的web模型,而MVC則不是.

Webform的URL地址是基於文件系統的,而MVC則是基於Action.

四、ASP.NET MVC中的約定

所有的控制器必須放到Controllers文件夾下

所有的控制器類名必須以Controller結尾

所有的模型應該放到Models目錄下

所有的視圖文件都應該放到Views目錄下.

所有的控制器類都應該繼承自Controller類(本質上是要繼承Icontroller接口)

在控制器類中的public方法被成為Action(行為)

如果在相應的視圖目錄中沒有找到視圖文件,那麼會尋找Views\Shared目錄下名稱相同的視圖文件

在Action中return view(),默認會返回和Action名稱一樣的視圖文件.

在Global.asax全局應用程序類中注冊了默認路由(名稱為Default),默認路由指定了Controller默認為Home,Action默認為Index,參數id為可選參數.所以在URL地址中如果不輸入controller默認訪問Home控制器;如果不輸入action默認訪問名稱為Index的action.http://localhost:54321/   解釋:根據默認路由規則,等價於 => http://localhost:54321/Home/Index
http://localhost:54321/Home/Index/5  解釋:數值5會自動映射到action中名稱為id的參數中。
Http://localhost:54321/Home/Index/5?name=jack&age=20   解釋:其中參數包括id、name和age三個

其他

在視圖文件中,有一個名稱為Model屬性,它指代的是從Action中傳遞的模型數據.為了使用模型數據,我們還需要在aspx視圖中<%@Page  %>指令的Inherits屬性中設置模型數據的類型/Razor視圖中設置model 類型......

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved