亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        ASP.NET4.0的MVC實(shí)戰(zhàn)操作

        2018-09-10 20:49:58李翠松常淑華候睿崢
        大東方 2018年6期

        李翠松 常淑華 候睿崢

        摘 要:本文分析了ASP.NET的特點(diǎn),提出了采用MVC+HTML技術(shù)搭建基于ASP平臺(tái)的在線考試系統(tǒng),實(shí)現(xiàn)了業(yè)務(wù)邏輯和數(shù)據(jù)表示分離的模式,同時(shí)針對(duì)asp中的mvc設(shè)計(jì)模式做出詳細(xì)的說明

        關(guān)鍵詞:MVC;WEB;ASP

        引 言

        傳統(tǒng)的網(wǎng)站一般是采用靜態(tài)網(wǎng)頁技術(shù)制作的靜態(tài)網(wǎng)頁網(wǎng)站,但是為了越來越大以及繁雜的需求。目前,絕大部分網(wǎng)站為了更好的實(shí)現(xiàn)用戶與網(wǎng)站的互動(dòng)性,一部分已經(jīng)實(shí)現(xiàn)靜態(tài)網(wǎng)站動(dòng)態(tài)化,或者說是動(dòng)態(tài)網(wǎng)站也不為過。因此大大提高了用戶的互動(dòng)能力。其次,網(wǎng)站的功能也豐富起來。然而,建設(shè)一個(gè)動(dòng)態(tài)網(wǎng)站,ASP.NET是非常有效的利器。

        一、靜態(tài)網(wǎng)站的優(yōu)缺點(diǎn)

        就靜態(tài)網(wǎng)站本身而言,它能沿用如此之久,必然是有可取之處的。例如,加載的時(shí)候不需要調(diào)動(dòng)數(shù)據(jù)庫,響應(yīng)速度快,減少了服務(wù)器對(duì)數(shù)據(jù)響應(yīng)的負(fù)荷,從安全角度講,靜態(tài)網(wǎng)頁不易遭受黑客攻擊,從網(wǎng)站穩(wěn)定性來講,如果程序、數(shù)據(jù)庫出了問題,會(huì)直接影響網(wǎng)站的訪問,而靜態(tài)網(wǎng)頁就避免了如此情況,不會(huì)因?yàn)槌绦虻龋鴵p失網(wǎng)站數(shù)據(jù),影響正常打開,損失用戶體驗(yàn),影響網(wǎng)站信任度。

        同時(shí)它也有不可否認(rèn)的缺點(diǎn),就像一把雙刃劍,生成大量文件的時(shí)候,服務(wù)器對(duì)html文件的響應(yīng)負(fù)擔(dān)也較重,還有,維護(hù)極其不方便,每次都要手動(dòng)生成網(wǎng)頁,當(dāng)網(wǎng)站龐大的時(shí)候會(huì)苦不堪言。3、空間占用大(多占用近一倍的空間)對(duì)于站長來說沒有必要浪費(fèi)空間的成本,舉個(gè)例子:如果是一個(gè)大型的網(wǎng)站,特別是資訊類網(wǎng)站來說,如果每個(gè)頁面都變成靜態(tài)頁面,那工作量肯定非常大,同時(shí)也非常不利于網(wǎng)站的維護(hù),因?yàn)殪o態(tài)網(wǎng)站是沒有數(shù)據(jù)庫的,每個(gè)頁面都需要人工檢查,如果網(wǎng)站的鏈接出現(xiàn)錯(cuò)誤,想要糾正,往往就需要花費(fèi)很長的時(shí)間來逐個(gè)排查!

        二、MVC設(shè)計(jì)模式分析

        (1)MVC設(shè)計(jì)模式

        首先說說它的定義,MVC 設(shè)計(jì)模型是一種使用 Model View Controller(模型-視圖-控制器)設(shè)計(jì)創(chuàng)建 Web 應(yīng)用程序的模式,通常為了實(shí)現(xiàn)程序的“高內(nèi)聚,低耦合”我們主要把應(yīng)用程序分成了三層。其中視圖層主要是為了實(shí)現(xiàn)與用戶進(jìn)行交流操作的界面,通常是由前端開發(fā)人員來完成;模型又是核心,它是網(wǎng)站處理程序執(zhí)行順序與邏輯,完成對(duì)數(shù)據(jù)在數(shù)據(jù)庫中的各種操作;控制主要處理人機(jī)交互的部分,負(fù)責(zé)讀取視圖中存儲(chǔ)的數(shù)據(jù),控制用戶輸入;完成用戶請(qǐng)求的邏輯在模型(Model)中實(shí)現(xiàn),然后處理的結(jié)果會(huì)反饋回視圖(View)中顯示。控制器則充當(dāng)中間控制功能,根據(jù)用戶的的請(qǐng)求調(diào)用相關(guān)的模型,然后把瀏覽器的處理結(jié)果傳遞給視圖,最后視圖展示最后的處理結(jié)果。MVC模式的目的就是實(shí)現(xiàn)Web系統(tǒng)的分布分工,對(duì)程序動(dòng)態(tài)的程序設(shè)計(jì),使后續(xù)對(duì)程序代碼的修改和系統(tǒng)擴(kuò)展簡化并且使程序某部分能夠重復(fù)利用。總的來說MVC設(shè)計(jì)模式可以方便開發(fā)人員分工協(xié)作,提高開發(fā)效率,增強(qiáng)程序的可維護(hù)性和拓展性而且還利用Controller將Model與View分離,降低它們之間的耦合度。

        (2)MVC特點(diǎn)

        ①一個(gè)模型提供不同的多個(gè)視圖表現(xiàn)形式,也能夠?yàn)橐粋€(gè)模型創(chuàng)建新的視圖而無須重寫模型。一旦模型的數(shù)據(jù)發(fā)生變化,模型將通知有關(guān)的視圖,每個(gè)視圖相應(yīng)地刷新自己。

        ②模型可復(fù)用。因?yàn)槟P褪仟?dú)立于視圖的,所以可以把一個(gè)模型獨(dú)立地移植到新的平臺(tái)工作

        ③較低的開發(fā)周期成本。MVC能夠有效降低降低開發(fā)和維護(hù)用戶接口的費(fèi)用。

        ④可維護(hù)性。分離視圖層和業(yè)務(wù)邏輯層也使得WEB應(yīng)用更易于維護(hù)和修改。將邏輯層和表示層相分離使開發(fā)人員節(jié)省了大量的后期維護(hù)時(shí)間。

        三、WEB架構(gòu)

        基于“WEB頁面/文件”架構(gòu),例如CGI和PHP/ASP程序。程序的文件分別存儲(chǔ)在不同的目錄里,與URL相對(duì)應(yīng)。當(dāng)HTTP請(qǐng)求提交至服務(wù)器時(shí),URL直接指向某個(gè)文件,然后由該文件來處理請(qǐng)求,并返回響應(yīng)結(jié)果??梢韵胂?,我們?cè)谡军c(diǎn)根目錄的news目錄下放置一個(gè)readnews.php文件。這種開發(fā)方式最自然,最易理解,也是PHP最常用的方式。要注意產(chǎn)生的URL對(duì)搜索引擎不友好,不過你可以用服務(wù)器提供的URL重寫方案來處理,例如Apache的mod_rewrite。

        基于“動(dòng)作”(Action)架構(gòu),這是MVC架構(gòu)的WEB程序所采用的最常見的方式。目前主流的WEB框架像Struts、Webwork(Java),Ruby on Rails(Ruby),Zend Framework(PHP)等都采用這種設(shè)計(jì)。URL映射到控制器(controller)和控制器中的動(dòng)作(action),由action來處理請(qǐng) 求并輸出響應(yīng)結(jié)果。可 以想像在實(shí)際代碼中,我們會(huì)有一個(gè)控制器newsController,其中有一個(gè)readAction。不同框架可能默認(rèn)實(shí)現(xiàn)方式稍有不同,有的是一個(gè) Controller一個(gè)文件,其中有多個(gè)Action,有的是每個(gè)Action一個(gè)文件。當(dāng)然這些你都可以自己控制,使用MVC體系結(jié)構(gòu),能夠使業(yè)務(wù)邏輯、數(shù)據(jù)、界面顯示分離。江浙兩種技術(shù)一起使用可以使程序更精簡,耦合性更少。

        基于“組件”(Component,GUI設(shè)計(jì)也常稱控件)、事件驅(qū)動(dòng)的架構(gòu),最常見的是微軟的.NET?;舅枷胧前殉绦蚍殖珊芏嘟M件,每個(gè)組件都可以觸發(fā)事件,調(diào)用特定的事件處理器來處理(比如在一個(gè)HTML按鈕上設(shè)置onClick事件鏈接到一個(gè)PHP函數(shù))。這種設(shè)計(jì)遠(yuǎn)離HTTP,HTTP請(qǐng)求完全抽象,映射到一個(gè)事件。事實(shí)上這種設(shè)計(jì)原本最常應(yīng)用于傳統(tǒng)桌面GUI程序的開發(fā),例如Delphi,Java Swing等。所有表現(xiàn)層的組件比如窗口,或者HTML表單都可以由IDE來提供,我們只需要在IDE里點(diǎn)擊或拖動(dòng)鼠標(biāo)就能夠自動(dòng)添加一個(gè)組件,并且添加一個(gè)相應(yīng)的事件處理器。

        四、基于ASP三層架構(gòu)的網(wǎng)站建設(shè)

        ASP具有良好的擴(kuò)充性,我們?cè)L問數(shù)據(jù)庫時(shí),采用的時(shí)ADO對(duì)象,訪問文件時(shí),采用的是文件系統(tǒng)對(duì)象(FSO),其實(shí)這時(shí)程序已經(jīng)是三層結(jié)構(gòu)的應(yīng)用程序了,只不過由于是利用內(nèi)置的對(duì)象而為意識(shí)到罷了。這些對(duì)象都遵循COM/ActiveX接口,因此我們自己開發(fā)的對(duì)象也要遵循這個(gè)接口。

        對(duì)于三層架構(gòu)來說,就是使用類,把我們?cè)谧鲰?xiàng)目的過程中,可能需要反復(fù)操作數(shù)據(jù)庫,反復(fù)的使用某個(gè)方法等等,可能就是操作的參數(shù)不同。如果我們?nèi)绻诿看问褂玫臅r(shí)候,都去編寫相應(yīng)的代碼,無疑會(huì)增加程序員的負(fù)擔(dān)。所以,為了增加方法的重用,就把這些能夠重用的方法抽象成類,以供程序員在其它地方可以調(diào)用。

        建設(shè)一個(gè)網(wǎng)站,我們首先要明晰需求,在確定需求后,采用model/view/controller的三層體系結(jié)構(gòu)。view接受用戶通過瀏覽器發(fā)送的請(qǐng)求并做出相應(yīng)。controller作為系統(tǒng)中的控制器,它能根據(jù)用戶的不同請(qǐng)求,相應(yīng)的調(diào)用不同的ASP頁面。

        系統(tǒng)的關(guān)鍵板塊有:

        (1)主界面模板

        將在線考試網(wǎng)站按照需求分成用戶登錄,考試通知,成績查詢,用戶查詢等板塊,通過CSS和JavaScript技術(shù)實(shí)現(xiàn)樣式和動(dòng)畫效果,使各種信息使用結(jié)構(gòu)和樣式統(tǒng)一的Web頁面,適應(yīng)各種課程內(nèi)容的管理。

        (2)菜單管理

        確定在線考試網(wǎng)的目錄結(jié)構(gòu)。不同菜單的結(jié)構(gòu)一般不同,其展開列表也不同。因此,在網(wǎng)站開發(fā)的過程中,我們可以使用數(shù)據(jù)庫的無限分級(jí)技術(shù),有效利用數(shù)據(jù)庫的性能,實(shí)現(xiàn)各級(jí)列表的動(dòng)態(tài)管理可以有效的避免欄目和其列表之間的復(fù)雜的嵌套關(guān)系,同時(shí)還可以在數(shù)據(jù)庫中清除的查詢,不會(huì)導(dǎo)致多菜單造成的管理混亂。

        (3)后臺(tái)管理

        網(wǎng)站結(jié)構(gòu)確定后,可以搭建后臺(tái)管理員界面,將需要管理的模塊與數(shù)據(jù)庫相連,比如試卷題目上傳修改,試卷批改,簡單的選擇填空自動(dòng)批卷所需要的答案庫,還有某些用戶的權(quán)限管理。

        (4)整合部署Web項(xiàng)目

        根據(jù)需要的功能,做出相應(yīng)模塊后,因?yàn)閍sp的可混編性可以高效的與后臺(tái)通訊,在已經(jīng)搭建好環(huán)境的windowserver服務(wù)器上部署項(xiàng)目,將網(wǎng)站源碼部署到iis的默認(rèn)網(wǎng)站根目錄下,配置域名,進(jìn)行測試。

        五、結(jié)束語

        本文介紹了MVC結(jié)構(gòu)和三種WEB架構(gòu),對(duì)三種架構(gòu)做了詳細(xì)的分析。同時(shí)也說明了基于ASP使用MVC模式設(shè)計(jì)網(wǎng)站的方式,提出了基于MVC模式和B/S結(jié)構(gòu)使用ASP技術(shù)制作動(dòng)態(tài)網(wǎng)站的方案。

        2017大學(xué)生創(chuàng)新項(xiàng)目《吉林農(nóng)業(yè)科技學(xué)院學(xué)生在線考試系統(tǒng)》 項(xiàng)目編號(hào):2017133

        通訊作者:常淑華

        參考文獻(xiàn)

        [1]何成萬等.基于MVC模式的科研成果管理系統(tǒng)開發(fā)[J].武漢工程大學(xué)學(xué)報(bào),2009,31(1):79~82.

        [2]薛德樞.通用精品課程網(wǎng)站開發(fā)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].大連理工大學(xué),2008.

        [3]陽西述等.基于UML和MVC的精品課程網(wǎng)站設(shè)計(jì)[J].現(xiàn)代計(jì)算機(jī),2011(9):59~62.

        [4]王明等.基于MVC科研管理系統(tǒng)的研究與實(shí)現(xiàn)[J].微計(jì)算機(jī)應(yīng)用,2009,30(1):77~80.

        [5]王立明.基于 MVC 架構(gòu)的網(wǎng)絡(luò)教學(xué)管理系統(tǒng)的設(shè)計(jì)與開發(fā)[D].甘肅:蘭州大學(xué),

        2012:14-16

        (作者單位:吉林農(nóng)業(yè)科技學(xué)院)

        精品女同一区二区三区亚洲| 国产精自产拍久久久久久蜜| 国产特级全黄一级毛片不卡| 97久久成人国产精品免费| 日本韩国亚洲三级在线| 国产公开免费人成视频| 国产99久久亚洲综合精品 | 久久久久亚洲AV无码专区喷| 五码人妻少妇久久五码| 一区二区三区免费观看日本| 成午夜精品一区二区三区| 亚洲精品永久在线观看| 永久免费毛片在线播放| 中文字幕一区二区三区乱码人妻| 一个色综合中文字幕人妻激情视频| av免费不卡国产观看| 亚洲aⅴ无码成人网站国产app| 精品国产AⅤ无码一区二区| 中文字幕人妻少妇久久| 日韩精品熟女中文字幕| 久久人妻内射无码一区三区| 无码久久流水呻吟| 性色av一区二区三区四区久久| 少妇太爽了在线观看免费| 内射欧美老妇wbb| 日本一区二区精品88| 中文字幕国内一区二区| 亚洲国产成人av二区| 无码av免费一区二区三区试看| 在线免费毛片| 少妇激情一区二区三区久久大香香| 国内自拍视频一区二区三区| 女人色熟女乱| 亚洲精品国产综合一线久久| 日本中文字幕一区二区在线观看| 一区二区三区免费观看日本| 久久久久久无码av成人影院| 亚洲AV无码精品蜜桃| 久久这黄色精品免费久| 亚洲av色香蕉一区二区三区 | 丰满精品人妻一区二区 |