殷存舉
【摘 要】在ASP.NET3.5 MVC框架下開發(fā)Web應用程序,與傳統(tǒng)的Web Form技術有很大的差異。首先它需要分別開發(fā)對應的模型、控制器和視圖,其次還需要理解URL路由的概念及其使用方法。本文通過使用ASP.NET 3.5MVC框架開發(fā)一個聯(lián)系人管理網站,來說明如何構建模型、如何實現(xiàn)控制器及如何自動創(chuàng)建對應的視圖。
【關鍵詞】MVC框架;模型;控制器;試圖
1 設計思想概述
1.1 什么是MVC
ASP.NET3.5 MVC框架基于MVC設計模式,MVC(Model View Controller)設計模式將一般應用程序根據功能的不同,劃分為模型、視圖和控制器三部分。
1)模型:是指在MVC設計模式中需要被顯示的數(shù)據,一般情況下從數(shù)據庫中讀取數(shù)據到模型、并保存模型的狀態(tài),提供數(shù)據訪問方法及數(shù)據的維護。
2)視圖:是指用來顯示模型的用戶界面,本例的主頁就是顯示聯(lián)系人信息列表的視圖。
3)控制器:是指用來處理對用戶的輸入或者交互命令,以便改變模型的狀態(tài),控制模型在視圖上顯示對應的數(shù)據。
1.2 MVC之間的關系
從圖中可以看出,當用戶在瀏覽器中輸入瀏覽器地址到獲得頁面的反饋信息,通常要經過以下5個步驟。
1)當用戶在瀏覽器中輸入瀏覽地址、發(fā)送頁面請求時,實際上是向控制器發(fā)送相關的命令;
2)控制器接到用戶的請求命令后,向模型請求獲得相關的數(shù)據;
3)模型將對應的數(shù)據返回給控制器;
4)控制器再將模型返回的數(shù)據發(fā)送到指定的視圖;
5)指定的視圖呈現(xiàn)數(shù)據。
從上述5個步驟中可以知道,控制器在其中扮演著十分重要的角色,它不僅處理用戶的請求,還實現(xiàn)與模型之間的交互,對指定的視圖發(fā)送相關的命令,在實際的ASP.NET 3.5 MVC應用開發(fā)中,開發(fā)者主要的工作就是實現(xiàn)控制器的編碼。
1.3 ASP.NET 3.5 MVC框架約定的目錄結構
通過項目模板ASP.NET MVC WebApplication創(chuàng)建聯(lián)系人管理網站LinkmanManager時,將模型、視圖和控制器組件及其他內容分別放在不同的文件夾下,以便于開發(fā)者維護和管理,LinkmanManager網站的目錄結構如圖2所示。
從圖中可以看出,Content文件夾存放靜態(tài)文件,例如圖片、樣式文件等。Script文件夾則存放JavaScript文件,Models文件夾存放的是LINQ to Entities自動生成的代碼文件;Views文件夾存放的是聯(lián)系人管理的相關視圖及公共視圖;Controllers文件夾存放的是控制器組件。
2 設計過程詳解
在開發(fā)基于ASP.NET 3..5 MVC框架的聯(lián)系人管理網站時,首先構建模型,其次實現(xiàn)控制器,最后根據控制器中定義的方法生成視圖。
2.1 使用LINQ to Entities構建模型
在“解決方案資源管理器”窗口中,選擇項目內的Models文件夾,并單擊右鍵,在彈出的快捷菜單中選擇“添加”->“新建項”,打開“添加新項”對話框,在“添加新項”對話框中選擇ADO.NET Entity Data Model模板,在名稱編輯框中輸入Linkman.edmx。然后點擊“添加”按鈕,選擇“從數(shù)據庫”生成。然后選擇tb_Linkman和tb_Categeory兩個數(shù)據庫對象,根據實體數(shù)據模型向導一步步生成實體數(shù)據模型。至此,基于ASP.NET 3..5 MVC框架的聯(lián)系人管理網站的模型Models已構建完畢。
2.2 控制器
在ASP.NET 3..5 MVC框架中,控制器起著非常重要的作用,控制器處理用戶的請求,將用戶請求的URL路由,分發(fā)到控制器中對應的方法,而不是文件系統(tǒng)中某個對應的真實文件,這是ASP.NET 3..5 MVC應用程序與傳統(tǒng)WebForm應用程序的區(qū)別之一。
在“解決方案資源管理器”窗口,選擇項目中的Contorllers文件夾,單擊右鍵,在彈出的快捷菜單中選擇“添加”->“Controller”菜單項,打開“Add Controller”對話框,在對話框中輸入“LinkmanCointroller”后單擊“Add”按鈕創(chuàng)建一個只包含Index()方法的聯(lián)系人控制器類。
由于控制器接到用戶的請求命令后,需要向模型請求獲得相關的數(shù)據,所以首先得創(chuàng)建模型中數(shù)據訪問類的實例。
實現(xiàn)獲取聯(lián)系人信息列表的方法。
實現(xiàn)根據唯一號取得對應聯(lián)系人明細信息的方法。
實現(xiàn)添加聯(lián)系人信息的方法。
實現(xiàn)修改聯(lián)系人信息的代碼。
2.3 創(chuàng)建視圖
創(chuàng)建了控制器LinkmanController類后,就可以根據控制器類中的方法自動生成相關的視圖頁面。實現(xiàn)方法如下:
在控制器LinkmanController中,實現(xiàn)Index()方法的視圖時在 “Add View”對話框的View content下拉框中選擇“List”項;實現(xiàn)Create()方法的視圖時選擇“Create”項,實現(xiàn)Details()方法的視圖時選擇“Details”項,實現(xiàn)Edit()方法的視圖時選擇“View content”下來框中的Edit項。
3 技術難點解析
4 結語
ASP.NET 3..5 MVC框架中個,URL被映射到一個控制器類中,該控制器處理用戶的輸入、選擇適當?shù)哪P?,獲得相關的數(shù)據,最后調用視圖組件顯示指定的數(shù)據,并返回用戶界面。傳統(tǒng)的ASP.NET應用程序中,URL通常被映射為保存在磁盤上的一個文件(例如.aspx),而,因此,MVC框架要比傳統(tǒng)的應用程序更易于單元測試,可擴展性更強。
【參考文獻】
[1]尹安.基于MVC和XML的異構數(shù)據庫集成系統(tǒng)設計與實現(xiàn)[D].華中科技大學,2006.
[2]徐楓.ASP.NET三層架構體系分析與應用[J].數(shù)字技術與應用,2011(08).
[3]戰(zhàn)非.NET平臺下基于LINQ三層架構的實現(xiàn)[J].電腦知識與技術,2010(11).
[責任編輯:薛俊歌]
【摘 要】在ASP.NET3.5 MVC框架下開發(fā)Web應用程序,與傳統(tǒng)的Web Form技術有很大的差異。首先它需要分別開發(fā)對應的模型、控制器和視圖,其次還需要理解URL路由的概念及其使用方法。本文通過使用ASP.NET 3.5MVC框架開發(fā)一個聯(lián)系人管理網站,來說明如何構建模型、如何實現(xiàn)控制器及如何自動創(chuàng)建對應的視圖。
【關鍵詞】MVC框架;模型;控制器;試圖
1 設計思想概述
1.1 什么是MVC
ASP.NET3.5 MVC框架基于MVC設計模式,MVC(Model View Controller)設計模式將一般應用程序根據功能的不同,劃分為模型、視圖和控制器三部分。
1)模型:是指在MVC設計模式中需要被顯示的數(shù)據,一般情況下從數(shù)據庫中讀取數(shù)據到模型、并保存模型的狀態(tài),提供數(shù)據訪問方法及數(shù)據的維護。
2)視圖:是指用來顯示模型的用戶界面,本例的主頁就是顯示聯(lián)系人信息列表的視圖。
3)控制器:是指用來處理對用戶的輸入或者交互命令,以便改變模型的狀態(tài),控制模型在視圖上顯示對應的數(shù)據。
1.2 MVC之間的關系
從圖中可以看出,當用戶在瀏覽器中輸入瀏覽器地址到獲得頁面的反饋信息,通常要經過以下5個步驟。
1)當用戶在瀏覽器中輸入瀏覽地址、發(fā)送頁面請求時,實際上是向控制器發(fā)送相關的命令;
2)控制器接到用戶的請求命令后,向模型請求獲得相關的數(shù)據;
3)模型將對應的數(shù)據返回給控制器;
4)控制器再將模型返回的數(shù)據發(fā)送到指定的視圖;
5)指定的視圖呈現(xiàn)數(shù)據。
從上述5個步驟中可以知道,控制器在其中扮演著十分重要的角色,它不僅處理用戶的請求,還實現(xiàn)與模型之間的交互,對指定的視圖發(fā)送相關的命令,在實際的ASP.NET 3.5 MVC應用開發(fā)中,開發(fā)者主要的工作就是實現(xiàn)控制器的編碼。
1.3 ASP.NET 3.5 MVC框架約定的目錄結構
通過項目模板ASP.NET MVC WebApplication創(chuàng)建聯(lián)系人管理網站LinkmanManager時,將模型、視圖和控制器組件及其他內容分別放在不同的文件夾下,以便于開發(fā)者維護和管理,LinkmanManager網站的目錄結構如圖2所示。
從圖中可以看出,Content文件夾存放靜態(tài)文件,例如圖片、樣式文件等。Script文件夾則存放JavaScript文件,Models文件夾存放的是LINQ to Entities自動生成的代碼文件;Views文件夾存放的是聯(lián)系人管理的相關視圖及公共視圖;Controllers文件夾存放的是控制器組件。
2 設計過程詳解
在開發(fā)基于ASP.NET 3..5 MVC框架的聯(lián)系人管理網站時,首先構建模型,其次實現(xiàn)控制器,最后根據控制器中定義的方法生成視圖。
2.1 使用LINQ to Entities構建模型
在“解決方案資源管理器”窗口中,選擇項目內的Models文件夾,并單擊右鍵,在彈出的快捷菜單中選擇“添加”->“新建項”,打開“添加新項”對話框,在“添加新項”對話框中選擇ADO.NET Entity Data Model模板,在名稱編輯框中輸入Linkman.edmx。然后點擊“添加”按鈕,選擇“從數(shù)據庫”生成。然后選擇tb_Linkman和tb_Categeory兩個數(shù)據庫對象,根據實體數(shù)據模型向導一步步生成實體數(shù)據模型。至此,基于ASP.NET 3..5 MVC框架的聯(lián)系人管理網站的模型Models已構建完畢。
2.2 控制器
在ASP.NET 3..5 MVC框架中,控制器起著非常重要的作用,控制器處理用戶的請求,將用戶請求的URL路由,分發(fā)到控制器中對應的方法,而不是文件系統(tǒng)中某個對應的真實文件,這是ASP.NET 3..5 MVC應用程序與傳統(tǒng)WebForm應用程序的區(qū)別之一。
在“解決方案資源管理器”窗口,選擇項目中的Contorllers文件夾,單擊右鍵,在彈出的快捷菜單中選擇“添加”->“Controller”菜單項,打開“Add Controller”對話框,在對話框中輸入“LinkmanCointroller”后單擊“Add”按鈕創(chuàng)建一個只包含Index()方法的聯(lián)系人控制器類。
由于控制器接到用戶的請求命令后,需要向模型請求獲得相關的數(shù)據,所以首先得創(chuàng)建模型中數(shù)據訪問類的實例。
實現(xiàn)獲取聯(lián)系人信息列表的方法。
實現(xiàn)根據唯一號取得對應聯(lián)系人明細信息的方法。
實現(xiàn)添加聯(lián)系人信息的方法。
實現(xiàn)修改聯(lián)系人信息的代碼。
2.3 創(chuàng)建視圖
創(chuàng)建了控制器LinkmanController類后,就可以根據控制器類中的方法自動生成相關的視圖頁面。實現(xiàn)方法如下:
在控制器LinkmanController中,實現(xiàn)Index()方法的視圖時在 “Add View”對話框的View content下拉框中選擇“List”項;實現(xiàn)Create()方法的視圖時選擇“Create”項,實現(xiàn)Details()方法的視圖時選擇“Details”項,實現(xiàn)Edit()方法的視圖時選擇“View content”下來框中的Edit項。
3 技術難點解析
4 結語
ASP.NET 3..5 MVC框架中個,URL被映射到一個控制器類中,該控制器處理用戶的輸入、選擇適當?shù)哪P?,獲得相關的數(shù)據,最后調用視圖組件顯示指定的數(shù)據,并返回用戶界面。傳統(tǒng)的ASP.NET應用程序中,URL通常被映射為保存在磁盤上的一個文件(例如.aspx),而,因此,MVC框架要比傳統(tǒng)的應用程序更易于單元測試,可擴展性更強。
【參考文獻】
[1]尹安.基于MVC和XML的異構數(shù)據庫集成系統(tǒng)設計與實現(xiàn)[D].華中科技大學,2006.
[2]徐楓.ASP.NET三層架構體系分析與應用[J].數(shù)字技術與應用,2011(08).
[3]戰(zhàn)非.NET平臺下基于LINQ三層架構的實現(xiàn)[J].電腦知識與技術,2010(11).
[責任編輯:薛俊歌]
【摘 要】在ASP.NET3.5 MVC框架下開發(fā)Web應用程序,與傳統(tǒng)的Web Form技術有很大的差異。首先它需要分別開發(fā)對應的模型、控制器和視圖,其次還需要理解URL路由的概念及其使用方法。本文通過使用ASP.NET 3.5MVC框架開發(fā)一個聯(lián)系人管理網站,來說明如何構建模型、如何實現(xiàn)控制器及如何自動創(chuàng)建對應的視圖。
【關鍵詞】MVC框架;模型;控制器;試圖
1 設計思想概述
1.1 什么是MVC
ASP.NET3.5 MVC框架基于MVC設計模式,MVC(Model View Controller)設計模式將一般應用程序根據功能的不同,劃分為模型、視圖和控制器三部分。
1)模型:是指在MVC設計模式中需要被顯示的數(shù)據,一般情況下從數(shù)據庫中讀取數(shù)據到模型、并保存模型的狀態(tài),提供數(shù)據訪問方法及數(shù)據的維護。
2)視圖:是指用來顯示模型的用戶界面,本例的主頁就是顯示聯(lián)系人信息列表的視圖。
3)控制器:是指用來處理對用戶的輸入或者交互命令,以便改變模型的狀態(tài),控制模型在視圖上顯示對應的數(shù)據。
1.2 MVC之間的關系
從圖中可以看出,當用戶在瀏覽器中輸入瀏覽器地址到獲得頁面的反饋信息,通常要經過以下5個步驟。
1)當用戶在瀏覽器中輸入瀏覽地址、發(fā)送頁面請求時,實際上是向控制器發(fā)送相關的命令;
2)控制器接到用戶的請求命令后,向模型請求獲得相關的數(shù)據;
3)模型將對應的數(shù)據返回給控制器;
4)控制器再將模型返回的數(shù)據發(fā)送到指定的視圖;
5)指定的視圖呈現(xiàn)數(shù)據。
從上述5個步驟中可以知道,控制器在其中扮演著十分重要的角色,它不僅處理用戶的請求,還實現(xiàn)與模型之間的交互,對指定的視圖發(fā)送相關的命令,在實際的ASP.NET 3.5 MVC應用開發(fā)中,開發(fā)者主要的工作就是實現(xiàn)控制器的編碼。
1.3 ASP.NET 3.5 MVC框架約定的目錄結構
通過項目模板ASP.NET MVC WebApplication創(chuàng)建聯(lián)系人管理網站LinkmanManager時,將模型、視圖和控制器組件及其他內容分別放在不同的文件夾下,以便于開發(fā)者維護和管理,LinkmanManager網站的目錄結構如圖2所示。
從圖中可以看出,Content文件夾存放靜態(tài)文件,例如圖片、樣式文件等。Script文件夾則存放JavaScript文件,Models文件夾存放的是LINQ to Entities自動生成的代碼文件;Views文件夾存放的是聯(lián)系人管理的相關視圖及公共視圖;Controllers文件夾存放的是控制器組件。
2 設計過程詳解
在開發(fā)基于ASP.NET 3..5 MVC框架的聯(lián)系人管理網站時,首先構建模型,其次實現(xiàn)控制器,最后根據控制器中定義的方法生成視圖。
2.1 使用LINQ to Entities構建模型
在“解決方案資源管理器”窗口中,選擇項目內的Models文件夾,并單擊右鍵,在彈出的快捷菜單中選擇“添加”->“新建項”,打開“添加新項”對話框,在“添加新項”對話框中選擇ADO.NET Entity Data Model模板,在名稱編輯框中輸入Linkman.edmx。然后點擊“添加”按鈕,選擇“從數(shù)據庫”生成。然后選擇tb_Linkman和tb_Categeory兩個數(shù)據庫對象,根據實體數(shù)據模型向導一步步生成實體數(shù)據模型。至此,基于ASP.NET 3..5 MVC框架的聯(lián)系人管理網站的模型Models已構建完畢。
2.2 控制器
在ASP.NET 3..5 MVC框架中,控制器起著非常重要的作用,控制器處理用戶的請求,將用戶請求的URL路由,分發(fā)到控制器中對應的方法,而不是文件系統(tǒng)中某個對應的真實文件,這是ASP.NET 3..5 MVC應用程序與傳統(tǒng)WebForm應用程序的區(qū)別之一。
在“解決方案資源管理器”窗口,選擇項目中的Contorllers文件夾,單擊右鍵,在彈出的快捷菜單中選擇“添加”->“Controller”菜單項,打開“Add Controller”對話框,在對話框中輸入“LinkmanCointroller”后單擊“Add”按鈕創(chuàng)建一個只包含Index()方法的聯(lián)系人控制器類。
由于控制器接到用戶的請求命令后,需要向模型請求獲得相關的數(shù)據,所以首先得創(chuàng)建模型中數(shù)據訪問類的實例。
實現(xiàn)獲取聯(lián)系人信息列表的方法。
實現(xiàn)根據唯一號取得對應聯(lián)系人明細信息的方法。
實現(xiàn)添加聯(lián)系人信息的方法。
實現(xiàn)修改聯(lián)系人信息的代碼。
2.3 創(chuàng)建視圖
創(chuàng)建了控制器LinkmanController類后,就可以根據控制器類中的方法自動生成相關的視圖頁面。實現(xiàn)方法如下:
在控制器LinkmanController中,實現(xiàn)Index()方法的視圖時在 “Add View”對話框的View content下拉框中選擇“List”項;實現(xiàn)Create()方法的視圖時選擇“Create”項,實現(xiàn)Details()方法的視圖時選擇“Details”項,實現(xiàn)Edit()方法的視圖時選擇“View content”下來框中的Edit項。
3 技術難點解析
4 結語
ASP.NET 3..5 MVC框架中個,URL被映射到一個控制器類中,該控制器處理用戶的輸入、選擇適當?shù)哪P?,獲得相關的數(shù)據,最后調用視圖組件顯示指定的數(shù)據,并返回用戶界面。傳統(tǒng)的ASP.NET應用程序中,URL通常被映射為保存在磁盤上的一個文件(例如.aspx),而,因此,MVC框架要比傳統(tǒng)的應用程序更易于單元測試,可擴展性更強。
【參考文獻】
[1]尹安.基于MVC和XML的異構數(shù)據庫集成系統(tǒng)設計與實現(xiàn)[D].華中科技大學,2006.
[2]徐楓.ASP.NET三層架構體系分析與應用[J].數(shù)字技術與應用,2011(08).
[3]戰(zhàn)非.NET平臺下基于LINQ三層架構的實現(xiàn)[J].電腦知識與技術,2010(11).
[責任編輯:薛俊歌]