国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

MVC設(shè)計(jì)模式在ASP.NET平臺(tái)中的應(yīng)用探究

2016-06-23 08:44:04
關(guān)鍵詞:視圖控制器模型

姜 翠

(咸寧職業(yè)技術(shù)學(xué)院,湖北咸寧437100)

?

MVC設(shè)計(jì)模式在ASP.NET平臺(tái)中的應(yīng)用探究

姜翠

(咸寧職業(yè)技術(shù)學(xué)院,湖北咸寧437100)

[摘要]近些年來(lái),隨著MVC(Model- View- Controller)設(shè)計(jì)模式的日趨成熟化,它在ASP.NET平臺(tái)上的應(yīng)用也越來(lái)越廣泛。作為軟件設(shè)計(jì)的經(jīng)典框架,它通過(guò)表示層、數(shù)據(jù)層與業(yè)務(wù)層等復(fù)合型結(jié)構(gòu)促成了對(duì)計(jì)算機(jī)視圖與控制器功能的實(shí)現(xiàn),提升了軟件開(kāi)發(fā)的系統(tǒng)性與安全性。本文對(duì)MVC設(shè)計(jì)模式的基本功能及其在ASP.NET平臺(tái)中的應(yīng)用特點(diǎn)進(jìn)行了解析,同時(shí)在用戶(hù)信息查詢(xún)的基礎(chǔ)上,對(duì)ASP.NET平臺(tái)當(dāng)中MVC設(shè)計(jì)模式的具體應(yīng)用進(jìn)行具體的探討。

[關(guān)鍵詞]ASP.NET;MVC設(shè)計(jì)模式;視圖;控制器;模型

ASP.NET來(lái)自于微軟公司的新計(jì)算體系平臺(tái)框架,是.NET框架的基本組成部分。該體系結(jié)構(gòu)在很大程度上支持了當(dāng)前的網(wǎng)絡(luò)分布式應(yīng)用,對(duì)傳統(tǒng)的Web開(kāi)發(fā)模型當(dāng)中存在的復(fù)雜繁瑣性以及管理安全性差的缺陷進(jìn)行了有效的改善,并且實(shí)現(xiàn)了比Web頁(yè)面技術(shù)更優(yōu)越的面向?qū)ο蠹夹g(shù)。但從全局來(lái)看,ASP.NET還有不足之處,比如它還依然要在傳統(tǒng)的Web頁(yè)面中顯示信息,且業(yè)務(wù)邏輯與流程控制之間的耦合性依然很高,不利于其工程性應(yīng)用的發(fā)展,同時(shí)也影響了用戶(hù)顯示問(wèn)題模型與用戶(hù)操作I/O交互作用在主操作界面中的相對(duì)穩(wěn)定性。因此,本文采用了MVC設(shè)計(jì)模式結(jié)合ASP.NET框架,根據(jù)現(xiàn)實(shí)系統(tǒng)需求改變和調(diào)整所顯示的內(nèi)容及形式,希望妥善解決上述問(wèn)題。

一、MVC的相關(guān)理論及設(shè)計(jì)模式

(一)MVC的基本理論

MVC的基本設(shè)計(jì)模式包括了模型(Model)、視圖(View)、控制器(Controller)三大組成部分。它誕生于20世紀(jì)70年代初期,是第一代基于視窗的計(jì)算機(jī)圖形用戶(hù)界面與用戶(hù)交互平臺(tái)。目前,ASP.NET技術(shù)在計(jì)算機(jī)的大型Web方面具有廣泛應(yīng)用,這也為MVC模式融入平臺(tái)提供了可能??梢哉f(shuō),MVC提升了Web應(yīng)用的可重用性與可擴(kuò)展性,將數(shù)據(jù)訪問(wèn)、業(yè)務(wù)邏輯和用戶(hù)接口完全隔離,并進(jìn)一步強(qiáng)化了計(jì)算機(jī)項(xiàng)目的可擴(kuò)展性、可維護(hù)性以及代碼復(fù)用功能,成為了當(dāng)代設(shè)計(jì)交互式應(yīng)用中的基本標(biāo)準(zhǔn)。

如圖1中所展示,組成MVC設(shè)計(jì)模式的三部分為模型、視圖與控制器。它們彼此之間存在一定的松散耦合性,提高了程序的開(kāi)發(fā)靈活性,避免重復(fù)性代碼的高出現(xiàn)率,達(dá)成了代碼重用功能。

視圖通過(guò)模型展示相關(guān)數(shù)據(jù)和邏輯關(guān)系,凸顯MVC設(shè)計(jì)模式在ASP.NET平臺(tái)中的重要性,也就是對(duì)不同形式的視圖進(jìn)行有效顯示;控制器對(duì)軟件以及用戶(hù)之間的相關(guān)交互操作進(jìn)行有效處理、控制,同時(shí)傳達(dá)模型的任何變化形式,保證用戶(hù)與模型之間時(shí)刻保持聯(lián)動(dòng)性,同時(shí)也接收來(lái)自于用戶(hù)的所有信息,最后凸顯模型的計(jì)算控制能力,所以控制器從整體來(lái)看就是模型與視圖之間的協(xié)調(diào)組件;最后是模型,視圖實(shí)現(xiàn)了模型的存儲(chǔ)功能,而控制器則負(fù)責(zé)管理模型數(shù)據(jù),生成基于核心數(shù)據(jù)的計(jì)算關(guān)系和邏輯功能,使得模型更具獨(dú)立性。

從整體來(lái)看,視圖、控制器與模型三者之間是完全分離的,它們?yōu)槟P蛯?shí)現(xiàn)了多視圖顯示功能。但是它們之間又存在聯(lián)系,如果用戶(hù)改變了某個(gè)視圖控制器中有關(guān)模型的數(shù)據(jù),那么這個(gè)視圖的數(shù)據(jù)也會(huì)發(fā)生改變,牽動(dòng)控制器中所有視圖的變化與更新??梢哉f(shuō),它反映了基于模型數(shù)據(jù)變化的一種信息傳播機(jī)制,也體現(xiàn)了MVC設(shè)計(jì)模式中三者之間的相互關(guān)系與各自功能關(guān)聯(lián)。

(二)MVC設(shè)計(jì)模式在ASP.NET平臺(tái)建設(shè)中所體現(xiàn)的優(yōu)勢(shì)

對(duì)ASP.NET平臺(tái)的建設(shè)可以在一定程度上強(qiáng)化MVC設(shè)計(jì)模式的開(kāi)發(fā)及運(yùn)用,凸顯MVC在平臺(tái)建設(shè)中的優(yōu)勢(shì)。

1.降低Web頁(yè)面依賴(lài)性

如前文所說(shuō),新的MVC設(shè)計(jì)模式減少了計(jì)算機(jī)系統(tǒng)對(duì)Web主頁(yè)面的依賴(lài)性,提升了對(duì)代碼的重用功能,這是因?yàn)镸VC特別強(qiáng)調(diào)了ASP.NET平臺(tái)在建設(shè)過(guò)程中的頁(yè)面設(shè)計(jì)代碼分離。

2.ASP.NET平臺(tái)設(shè)計(jì)清晰化

MVC的加入讓模型能夠在同一時(shí)間內(nèi)建立并使用多個(gè)視圖,使得模型數(shù)據(jù)變化與傳播機(jī)制都發(fā)生改變,實(shí)現(xiàn)了所有關(guān)聯(lián)視圖與控制器之間的行為同步。正是這種同步性激發(fā)了MVC設(shè)計(jì)模式在運(yùn)用程序中可拓展性的發(fā)揮,使得平臺(tái)在實(shí)現(xiàn)某些功能時(shí)更加輕松協(xié)調(diào),允許了多控制器的使用。在這種傳播機(jī)制下,模型的改變也提升了控制器獨(dú)立工作的能力。

3.MVC設(shè)計(jì)模式中模型的可移植性

MVC中的模型全部獨(dú)立于視圖之外,將它們單獨(dú)移植到某個(gè)ASP.NET之外的新平臺(tái)上,其操作方法就是在新平臺(tái)上對(duì)視圖與控制器數(shù)據(jù)進(jìn)行全面修改。由此可見(jiàn),MVC設(shè)計(jì)模式能夠?yàn)锳SP.NET創(chuàng)造更多全新的平臺(tái)結(jié)構(gòu),讓MVC設(shè)計(jì)模式不僅局限于設(shè)計(jì)基本的系統(tǒng)界面。

二、MVC設(shè)計(jì)模式在ASP.NET系統(tǒng)中的應(yīng)用分析

(一)MVC的應(yīng)用模型分析

ASP.NET為MVC設(shè)計(jì)模式提供了直接可用的應(yīng)用環(huán)境,利用code- behind代碼對(duì)顯示頁(yè)面中用戶(hù)交互功能的處理。在這里,code- behind源代碼文件與.aspx文件之間相互對(duì)應(yīng),腳本語(yǔ)言、HTML代碼以及邏輯控制代碼之間的分離依靠源代碼文件得到最終的實(shí)現(xiàn)。此外,ASP. NET這一系統(tǒng)也通過(guò)表示層、數(shù)據(jù)層與業(yè)務(wù)層三層Web結(jié)構(gòu)劃實(shí)現(xiàn)了視圖與控制器功能,并將MVC中的三大部分映射回ASP.NET的平臺(tái)結(jié)構(gòu)里面,并基于MVC模式下對(duì)ASP.NET平臺(tái)系統(tǒng)的應(yīng)用模型進(jìn)行進(jìn)一步的構(gòu)建。以Web系統(tǒng)當(dāng)中的“用戶(hù)信息查詢(xún)模塊”為例,應(yīng)用模型的建立基本實(shí)現(xiàn)了MVC在ASP.NET平臺(tái)中的應(yīng)用機(jī)制。如圖2。

(二)視圖實(shí)現(xiàn)

ASP.NET平臺(tái)的開(kāi)發(fā)環(huán)境當(dāng)中,視圖的設(shè)計(jì)更加地便捷。利用Visual Studio.NET便可獲得視圖設(shè)計(jì)所需的Web窗體、HTML控件以及各種各樣的組件。這些控件都鑲嵌于Web自定義系統(tǒng)之中,它們幫助計(jì)算機(jī)的Windows界面實(shí)現(xiàn)了對(duì)視圖的可視化設(shè)計(jì),并且讓視圖與各個(gè)模塊中的.aspx文件也實(shí)現(xiàn)了一一對(duì)應(yīng),優(yōu)化了各個(gè)用戶(hù)界面的操作性。

圖1  MVC設(shè)計(jì)模式中各組件類(lèi)型之間的功能關(guān)系示意圖

以XX企業(yè)的績(jī)效信息平臺(tái)為例,各個(gè)模塊與視圖當(dāng)中的.aspx文件一一對(duì)應(yīng),系統(tǒng)當(dāng)中的用戶(hù)界面都有與之相互對(duì)應(yīng)的.aspx文件進(jìn)行匹配。在XX企業(yè)的績(jī)效信息平臺(tái)系統(tǒng)的設(shè)計(jì)過(guò)程中,通過(guò)對(duì)責(zé)任人、績(jī)效測(cè)量員、系統(tǒng)管理人員、企業(yè)員工用戶(hù)的需要進(jìn)行分析,對(duì)測(cè)量、分析、修改、評(píng)價(jià)、查詢(xún)、指標(biāo)管理等相關(guān)界面進(jìn)行合理、科學(xué)的定義。這其中,“測(cè)量”這一核心業(yè)務(wù)流程最能說(shuō)明視圖設(shè)計(jì)的實(shí)現(xiàn):系統(tǒng)為視圖的設(shè)計(jì)提供一定的過(guò)程選擇接口,依照相關(guān)的權(quán)限,企業(yè)測(cè)量人員對(duì)企業(yè)的績(jī)效考核過(guò)程進(jìn)行選擇。在測(cè)量的過(guò)程中,系統(tǒng)提供了一定的時(shí)間選擇接口,視圖當(dāng)中可以對(duì)每一個(gè)過(guò)程進(jìn)行測(cè)量界面的顯示,相關(guān)的指標(biāo)以及時(shí)間均為實(shí)測(cè)值。

(三)控制器實(shí)現(xiàn)

MVC設(shè)計(jì)模式的加入使得ASP.NET平臺(tái)在代碼分離功能機(jī)制方面得到了強(qiáng)化,它可以簡(jiǎn)化視圖中的各個(gè)代碼,使控制器、模型之間的代碼分離,使每個(gè).aspx文件都對(duì)應(yīng)一個(gè)后端代碼.cs,實(shí)現(xiàn)控制器功能,使Controller能夠更好地接收、截獲和處理來(lái)自于用戶(hù)的各種請(qǐng)求與突發(fā)事件。就以用戶(hù)數(shù)據(jù)查詢(xún)模塊視圖UserInfo.aspx所對(duì)應(yīng)的Controller為例,根據(jù)用戶(hù)所輸入的個(gè)人ID來(lái)查詢(xún)出他的基本信息,所以控制器的具體實(shí)現(xiàn)流程為:

Public class UserInfo:System.Web.UI.Page

{Protected System.Web.UI.WebControls.DataGrid dgU-serInfo;//聲明DataGrid控件}

Protected System.Web.UI.WebControls.Button btnSubm it;//聲明Button控件,提交按鈕

Protected System.Web.UI.WebControls.TextBox tbID;//聲明TextBox控件,用戶(hù)填寫(xiě)ID數(shù)據(jù)

UserInfoBiz useInofo=new UserInfoBiz();//實(shí)例化對(duì)應(yīng)業(yè)務(wù)邏輯類(lèi)

{Stringid=tbID.Text;//用戶(hù)輸入于textbox中的數(shù)據(jù)

dgUserIofo.DataSource=ds.Tables[0].DefaultView;//截取數(shù)據(jù)源

dgUserIofo.DataBind();//綁定控件,聯(lián)系到指定數(shù)據(jù)源}

void btnSubmit_Click(Object sender,EventArgs)//提交按鈕事件

(四)模型實(shí)現(xiàn)

模型在ASP.NET平臺(tái)的作用就是管理應(yīng)用程序域中的各種數(shù)據(jù)和行為,它銜接了數(shù)據(jù)庫(kù)與業(yè)務(wù)邏輯數(shù)據(jù),提升了系統(tǒng)的公共交互操作性。在基本類(lèi)庫(kù)中定義DataBase類(lèi),將其變成能夠在系統(tǒng)平臺(tái)的公共數(shù)據(jù)庫(kù)中操作使用的基本類(lèi),做到基本類(lèi)與數(shù)據(jù)庫(kù)之間的連接和交互。在此過(guò)程中,控制器以后端代碼.cs文件來(lái)組成新的Biz層,達(dá)到完善模型的目的。

圖2 在ASP.NET平臺(tái)中MVC設(shè)計(jì)模式的應(yīng)用

參考文獻(xiàn):

[1]庫(kù)爾班江·托乎提.MVC設(shè)計(jì)模式在ASP.NET平臺(tái)中的應(yīng)用[J].信息系統(tǒng)工程,2015(2)∶14.

[2]陳佳.ASP.NET系統(tǒng)開(kāi)發(fā)中MVC設(shè)計(jì)模式的應(yīng)用研究[J].計(jì)算機(jī)與網(wǎng)絡(luò),2009(7)∶46- 52.

[3]徐朝輝,樊銀亭.MVC設(shè)計(jì)模式在ASP.NET應(yīng)用開(kāi)發(fā)中的研究和實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù)(學(xué)術(shù)交流),2007,1 (6)∶1536- 1537.

[4]張?jiān)?,張昭,劉?基于MVC設(shè)計(jì)模式的虛擬實(shí)驗(yàn)平臺(tái)模塊化設(shè)計(jì)[J].計(jì)算機(jī)工程與科學(xué),2013,35(8)∶125- 129.

[5]李園,陳世平.MVC設(shè)計(jì)模式在ASP.NET平臺(tái)中的應(yīng)用[J].計(jì)算機(jī)工程與設(shè)計(jì),2009(7):152- 153.

[6]任艷斐.MVC設(shè)計(jì)模式在基于ASP.NET系統(tǒng)開(kāi)發(fā)中的應(yīng)[J].科技廣場(chǎng),2008(5)∶168- 169.

[中圖分類(lèi)號(hào)]TP308

[文獻(xiàn)標(biāo)識(shí)碼]A

[文章編號(hào)]1673- 0046(2016)4- 0183- 03

猜你喜歡
視圖控制器模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
5.3 視圖與投影
視圖
Y—20重型運(yùn)輸機(jī)多視圖
SA2型76毫米車(chē)載高炮多視圖
3D打印中的模型分割與打包
模糊PID控制器設(shè)計(jì)及MATLAB仿真
MOXA RTU控制器ioPAC 5542系列
大同县| 华亭县| 延庆县| 西城区| 吐鲁番市| 梁平县| 广昌县| 隆林| 凤台县| 保山市| 灵丘县| 永州市| 体育| 方正县| 潼关县| 云南省| 通海县| 彰化县| 长武县| 永平县| 白水县| 揭西县| 博罗县| 澄江县| 邓州市| 鲜城| 祁东县| 新平| 南丰县| 景东| 佛山市| 汾西县| 蓬莱市| 昆明市| 玉屏| 松阳县| 华容县| 邵东县| 济源市| 浦北县| 建阳市|