資源描述:
《基于asp.net mvc框架的研究》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學術(shù)論文-天天文庫。
1、基于ASP.NETMVC框架的研究提要:網(wǎng)站應用開發(fā)技術(shù)中最常用的技術(shù)是MVC,Microsoft公司的ASP.NET平臺上推出MVC框架技術(shù),大大提高了網(wǎng)站程序開發(fā)的速度,目前ASP.NETMVC框架已經(jīng)成為網(wǎng)站開發(fā)重要的工具。關(guān)鍵詞:MVC;網(wǎng)站開發(fā);ASP.NET中圖分類號:TP311.521ASP.NETMVC發(fā)展早期提出的MVC是一種架構(gòu)模式,MVC并不是指設計模式,MVC主要用來描述應用程序的整體結(jié)構(gòu)及MVC各部分信息交互的方式。早期提出MVC模式的是TrygveReenskaug,主要為程序語言Smal
2、ltalk發(fā)明的一種軟件設計的模式。MVC主要用來實現(xiàn)動態(tài)程序設計,從而簡化日后的程序修改和升級操作,同時可以將程序中部分功能重復使用。MVC可以將復雜的程序簡化,程序結(jié)構(gòu)更加直觀,現(xiàn)在MVC框架模式有很多版本,最常見的框架模式有Struts,Spring,Hibernate,ASP.NETMVC等。Microsoft公司的ASP.NET7MVC框架是以MVC模式為基礎的網(wǎng)站應用程序框架,它為程序開發(fā)人員提供了一項快速開發(fā)網(wǎng)站框架設計模式,MVC可以實現(xiàn)程序和界面分離,主要體現(xiàn)在分離任務,主要包括輸入邏輯,業(yè)務邏輯,
3、顯示邏輯分開,這樣設計易于測試,并支持測試驅(qū)動開發(fā)。它是可以擴展簡便的框架,程序員可以自定義視圖引擎,UrlRouting規(guī)則和重載Action方法等。程序開發(fā)人員可使用ASP.NET所提供的頁面標記,模板頁和用戶控件等開發(fā)網(wǎng)站程序。在ASP.NET1中使用的codebehind技術(shù),實現(xiàn)了界面aspx文件和代碼cs文件分離,也就是一種MVC設計。而ASP.NET2.0中使用codebeside技術(shù),主要實現(xiàn)一個視圖aspx文件可以關(guān)聯(lián)多個cs文件。在ASP.NET3.5中MVC框架功能進一步增強。程序員可以使用Ur
4、lRouting技術(shù)實現(xiàn)網(wǎng)站程序url指向某個controller等。ASP.NET3.5需要安裝ASP.NETMVC2后,才能實現(xiàn)ASP.NETMVC應用程序開發(fā)。在ASP.NET4中自帶ASP.NETMVC2,在ASP.NET4之后的ASP.NET版本中不需要安裝ASP.NETMVC2,它是ASP.NET的一個內(nèi)置組件,這樣設計可以方便程序開發(fā),提高程序開發(fā)的效率。2ASP.NETMVC框架2.1MVC框架由模型,視圖,控制器組成,是網(wǎng)站開發(fā)程序員非常熟悉的一種開發(fā)設計框架,將業(yè)務邏輯,數(shù)據(jù)和界面顯示分離,使程序
5、開發(fā)和維護更加方便快捷,可以提高程序開發(fā)效率。7模型是對數(shù)據(jù)的加工,業(yè)務流程的處理,所有的網(wǎng)站程序都顯示數(shù)據(jù),數(shù)據(jù)存放的位置可以是磁盤文件,也可以存放在數(shù)據(jù)中,還可以存放在內(nèi)存中,模型是相對數(shù)據(jù)的一個抽象概念,網(wǎng)站中數(shù)據(jù)不管是以哪種形式存放,網(wǎng)站都可以通過模型來操作數(shù)據(jù)。在網(wǎng)站程序設計時通常把數(shù)據(jù)的實體類看做一個模型,比如新聞發(fā)布系統(tǒng)中,新聞信息通常是存儲在數(shù)據(jù)庫中的,在數(shù)據(jù)庫中用一個新聞表new來存放信息,在網(wǎng)站程序中會創(chuàng)建一個數(shù)據(jù)類new來與數(shù)據(jù)庫中新聞表相對應,這個類就是新聞表的模型。模型是一個獨立的功能模塊,
6、通過一個模型程序模塊可以為多個視圖提供數(shù)據(jù),設計完成的模型可以被多個視圖復用,從而提高了代碼的重用性。視圖是顯示給用戶的界面,視圖界面中數(shù)據(jù)來自于模型,視圖數(shù)據(jù)更新由控制器來實現(xiàn),視圖只顯示數(shù)據(jù)不提供業(yè)務邏輯處理功能。例如用戶可以通過視圖來查看模型中定義的數(shù)據(jù),用戶還可以通過視圖來操作數(shù)據(jù)信息,使用模型將數(shù)據(jù)信息操作的結(jié)果顯示給用戶。在windows桌面系統(tǒng)中,視圖可以是一個或多個窗體。在網(wǎng)站程序中的視圖是aspx文件,每個aspx文件是一個網(wǎng)頁的視圖界面。7控制器接受用戶的輸入信息并調(diào)用模型和視圖完成用戶的需求,當
7、用戶單擊網(wǎng)頁超級鏈接或發(fā)送HTML表單時,控制器不會輸入任何信息,控制器只接收請求,決定調(diào)用哪個模型處理請求,最后再確定用哪個視圖返回數(shù)據(jù)信息。例如用戶通過視圖發(fā)布一個新聞信息命令給控制器,控制器將按程序的設計更新模型中定義的數(shù)據(jù)信息,最后將結(jié)果以視圖的形式顯示給用戶。2.2ASP.NETMVC框架提供了一個可以代替WebForm的框架模式。WebForm主要是由aspx文件和aspx.cs文件組成,WebForm可以將HTML接口與業(yè)務邏輯分開,它具有豐富的服務器控件可供程序員使用,加快了程序的開發(fā)速度,它提供數(shù)據(jù)
8、做定技術(shù),簡化了程序與數(shù)據(jù)庫之間的操作,它還可以使用用戶控件和第三方控件技術(shù),提高了程序的可擴展性。但WebForm頁面生命周期比較復雜,增加了程序調(diào)試復雜程度,在程序開發(fā)過程中可能存在過度封裝,從而影響程序的運行速度。ASP.NETMVC優(yōu)點是將復雜的網(wǎng)站程序分為模型,視圖和控制器,這樣就使復雜程序開發(fā)更加容易維護,減少了程序之間的耦合。不使