ASP.NET MVC3實踐–入門

來源:互聯網
上載者:User

1、引言

  MVC3是ASP.NET架構下的MVC架構,隨MVC3同期發布的還有ASP.NET的最新引擎Razor,關於MVC3和Razor的詳細文檔參見MSDN

MSDN:MVC3 MSDN上的MVC3參考,建議快速探索

MSDN:Razor Razor的整體介紹,建議未使用過的讀者詳細瞭解下

本部落格從本文開始,將陸續推出ASP.NET MVC3的系列文章,旨在介紹ASP.NET的MVC架構,以及如何利用此架構進行高效的WEB開發。對於本文的讀者,需要瞭解ASP.NET、MVC構架、以及Entity Framework的基礎知識。好的,廢話不多說,讓我們開始ASP.NET的MVC之旅吧!

2、ASP.NET架構下的MVC應用程式的執行

階段

詳細資料

接收對應用程式的第一個請求

在 Global.asax 檔案中,Route 對象將添加到 RouteTable 對象中。

執行路由

UrlRoutingModule 模組使用 RouteTable 集合中第一個匹配的 Route 對象來建立 RouteData 對象,然後使用所建立的對象建立 RequestContext 對象。

建立 MVC 請求處理常式

MvcRouteHandler 對象將建立 MvcHandler 類的執行個體,並將 RequestContext 執行個體傳遞給處理常式。

建立控制器

MvcHandler 對象使用 RequestContext 執行個體標識用於建立控制器執行個體的 IControllerFactory 對象(通常是 DefaultControllerFactory 類的執行個體)。

執行控制器

MvcHandler 執行個體調用控制器的 Execute 方法。

叫用作業

對於從 ControllerBase 類繼承的控制器,與該控制器關聯的 ControllerActionInvoker 對象將決定要調用的 controller 類的操作方法,然後調用該方法。

執行結果

操作方法將接收使用者輸入,準備合適的響應資料,然後通過返回結果類型來執行結果。 可執行檔內建結果類型包括:ViewResult(呈現視圖並且是最常用的結果類型)、RedirectToRouteResult、RedirectResult、ContentResult、JsonResult、FileResult 和 EmptyResult。



3、開發環境

  Visual Studio 2010的安裝包只包含MVC2,需要單獨安裝,建議使用http://www.asp.net/mvc/mvc3上的web installer安裝,如果使用單獨的asp.net mvc3安裝包,可能在個別步驟出現掛起的現象。

  資料庫方面,為了方便使用Entity Framwork,本文使用Sql Server。配置方面不用過多關注,只需要預設配置就能夠運行本文提供的內容。

與J2EE架構下的MVC繁瑣的開發環境搭建不同,在ASP.NET下,只需要如下工具即可:

Visual Studio Web Developer Express 2010

ASP.NET MVC 3 Tools

Sql Server 2008 Express

下面的連結有asp.net網站提供的Web Developer Express+MVC3的web installer。

http://www.asp.net/mvc/mvc3

不過對於有條件的讀者,建議使用Visual Studio的完整版本。


4、協助工具輔助NuGet

  NuGet是.NET平台下面向開發人員的包管理器,對於曾經掙紮在Struts、Hibernate等東西的設定檔的讀者來說,NuGet是一開發人員的福音。NuGet的使用類似於Linux下的包管理器,但也許更為簡單。對於一個項目,NuGet可以做下面這些事情:

1. 搜尋包;

2. 下載包到本地並添加到項目中(包括添加引用和dll等檔案);

3. 根據包自動設定Web項目的config檔案。

關於NuGet的更多內容,請參考codeplex上的NuGet項目:

http://nuget.codeplex.com/

這裡,我們示範如何使用NuGet在一個空MVC3項目中加入Ajax Control Toolkit,這將是一個非常簡單的過程^_^。

首先建立一個MVC3項目,選擇空模板,Project Layout1所示:

圖1.

然後,按右鍵項目中的“引用”,在快顯功能表中點擊“Manage NuGet Packages”,在搜尋方塊中鍵入要搜尋包的名字即可,2所示:

圖2.

然後點擊Install,然後,就沒有然後了,NuGet會為你完成所有的配置!

Tips:MVC3的項目模板,包括Empty的模板,會安裝如EntityFramework、JQuery等幾個常用的包,這些包都可以使用NuGet來進行管理。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.