999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ASP.NET MVC模式的筆記管理系統(tǒng)

2019-07-10 02:04:44詹喆胡宗海姚程寬曹立勇
科技視界 2019年13期

詹喆 胡宗海 姚程寬 曹立勇

【摘 要】隨著互聯(lián)網(wǎng)的高速發(fā)展,人們對Web應(yīng)用開發(fā)的要求越來越高。MVC設(shè)計模式在滿足界面要求的同時,使軟件的計算模型獨立于界面,為大型可擴展的Web應(yīng)用開發(fā)提供了結(jié)構(gòu)化的模型。本文以筆記管理為例,研究了基于ASP.NET MVC模式的系統(tǒng)開發(fā),展示出該技術(shù)架構(gòu)對頁面開發(fā)模式的影響,更強調(diào)使用傳統(tǒng)HTML,輕量化了Web開發(fā),使系統(tǒng)運行效率得到了提升。

【關(guān)鍵詞】ASP.NET;MVC;軟件開發(fā)

中圖分類號: TP311.52文獻標(biāo)識碼: A文章編號: 2095-2457(2019)13-0065-003

DOI:10.19694/j.cnki.issn2095-2457.2019.13.030

Notebook Management System Based on ASP.NET MVC Mode

ZHAN Zhe HU Zong-hai YAO Cheng-kuan CAO Li-yong

(Dept. of Common Basic, Anqing Medical College, Anhui Anqing 246052, China)

【Abstract】With the rapid development of the Internet, people have higher and higher requirements for Web application development. MVC design pattern not only meets the interface requirements, but also makes the software computing model independent of the interface, which provides a structured model for the development of large scalable Web applications. This paper takes note management as an example, studies the system development based on ASP.NET MVC mode, demonstrates the impact of the technical framework on the page development mode, emphasizes the use of traditional HTML, lightweight Web development, and improves the efficiency of the system.

【Key words】ASP.NET; MVC; Software Development

0 引言

在互聯(lián)網(wǎng)時代,越來越多的應(yīng)用趨向Web化(基于B/S模式的Web開發(fā)),桌面軟件正在慢慢屈居次席。傳統(tǒng)Web開發(fā)使用原生HTML標(biāo)簽與ECMAScript(JavaScript)與服務(wù)器端進行通信,服務(wù)器端調(diào)用CGI(Common Gateway Interface 通用網(wǎng)關(guān)接口)為請求進行服務(wù),隨著系統(tǒng)規(guī)模與復(fù)雜度的不斷增長,這種傳統(tǒng)開發(fā)方式暴露出性能與開發(fā)效率上的嚴(yán)重不足,無法滿足現(xiàn)代Web系統(tǒng)開發(fā)的需要。Microsoft公司在2000年,效仿用于桌面軟件開發(fā)的WinForm技術(shù),推出了名為ASP.NET WebForm的開發(fā)技術(shù),首次在Web開發(fā)中應(yīng)用了“事件驅(qū)動”開發(fā)模型(Event Driven Development)。WebForm是一種類似桌面軟件的開發(fā)技術(shù),屏蔽掉了傳統(tǒng)開發(fā)模式中HTTP協(xié)議的“無狀態(tài)”導(dǎo)致的難以理解的問題,使開發(fā)效率得到了極大的提高。2007年,Microsoft公司推出ASP.NET MVC開發(fā)技術(shù),將著名的MVC軟件開發(fā)模式應(yīng)用到了Web開發(fā)中,Model-Controller-View的模式將Web的整體架構(gòu)分為了三個各司其職的組件。

1 ASP.NET MVC 簡介

ASP.NET是微軟專門針對MVC架構(gòu)推出的Web開發(fā)框架,作為新一代的Web開發(fā)框架,它旨在替代ASP.NET Web Form。它良好地結(jié)合了MVC架構(gòu)的高效和清晰、敏捷開發(fā)中最新潮的技術(shù)和思想與ASP.NET平臺中的優(yōu)良部分。

在ASP.NET MVC中,模型、視圖與控制器,有了更加具體的展示。

模型代表是一系列業(yè)務(wù)相關(guān)實體的類。就像操作數(shù)據(jù)的代碼一樣,業(yè)務(wù)實體一般將存儲在數(shù)據(jù)庫中的這些數(shù)據(jù)封裝起來,并執(zhí)行領(lǐng)域相關(guān)的業(yè)務(wù)邏輯,它就像數(shù)據(jù)訪問層一樣,使用Entity Framework等ORM工具,輔以業(yè)務(wù)邏輯相關(guān)的代碼對數(shù)據(jù)進行操作。視圖在ASP.NET MVC中是一種動態(tài)生成HTML的模板,ASP.NET MVC保證了有一些視圖是無法展示在界面上的,例如母版頁等。控制器在ASP.NET MVC中命名以Controller結(jié)尾,負(fù)責(zé)處理模型數(shù)據(jù)以及展示視圖,圖1展示了基于ASP.NET MVC的筆記項目的基本結(jié)構(gòu)。

與ASP.NET Web Form不同,ASP.NET MVC在項目的開發(fā)模型上是一套嶄新的模型。

(1)ASP.NET MVC上不存在Web Form中一個頁面對應(yīng)一個后臺CS代碼文件的邏輯,取而代之的是讓模板視圖(CSHTML)專門進行界面展示,使一個視圖可以給多個控制器使用。

(2)沒有了Web Form中的界面設(shè)計器,在設(shè)計界面時,無法實時看到界面布局效果,如果要瀏覽界面效果,只能在瀏覽器中查看。

(3)取消了服務(wù)器控件,無法通過屬性設(shè)計器針對事件進行編程,取而代之的是使用原生HTML標(biāo)簽。

(4)Web Form中文件所處的物理位置即頁面的URL鏈接,而在ASP.NET MVC中,不存在URL對應(yīng)某文件的概念,URL統(tǒng)一由獨立的路由組件進行管理,通過路由尋找對應(yīng)的視圖與控制器,圖2展示了ASP.NET MVC中的默認(rèn)路由組件。

(5)由于拋棄服務(wù)器控件,回歸到傳統(tǒng)的無狀態(tài)HTTP開發(fā)模式,不需要保存頁面的狀態(tài),節(jié)省了空間,使頁面?zhèn)鬏斝阅艿玫搅颂岣摺?/p>

(6)對單元測試支持良好。由于框架中的核心類都是面相接口的,于是我們可以很容易地通過創(chuàng)建模擬接口行為的測試類,將每一個對象或函數(shù)單獨測試,而不需要運行整個站點進行測試。

2 ASP.NET MVC與MVC模式開發(fā)

ASP.NET MVC基于MVC架構(gòu)進行構(gòu)建,對MVC的支持是內(nèi)建的,可以說沒有MVC,就沒有ASP.NET MVC框架。下面以筆記管理為例,展示ASP.NET MVC中的MVC模式開發(fā)。

2.1 Model構(gòu)建

在ASP.NET MVC的開發(fā)中,大多使用Code First這一方式進行開發(fā),它使用“約定”式編程,先寫出模型類,然后利用EF框架根據(jù)模型類在數(shù)據(jù)庫中構(gòu)建出相應(yīng)的表。這一節(jié)我們依然以IdentityDB為例,展示Model組件的構(gòu)建,以及如何根據(jù)Model生成數(shù)據(jù)庫中的表。

如下圖3所示,我們編寫出了相應(yīng)的模型類,并利用.NET提供的Attribute特性給相應(yīng)的字段添加了相關(guān)約束條件。

接著在我們的數(shù)據(jù)庫生成Context中添加該模型以及需要的其他模型類的DbSet,使ADO.NET Entity Framework能夠在程序運行時自動地向數(shù)據(jù)庫中添加相應(yīng)的表。

接著我們運行程序,這時數(shù)據(jù)庫中會相應(yīng)地生成表,圖5展示了Note表的表結(jié)構(gòu),其中表屬性與Note模型類中所定義的字段約束一致。

此時使用如下代碼即可以對數(shù)據(jù)庫中的Note表進行操作,例如增加操作,刪除操作,修改操作,與搜索操作。此后在項目中即可以方便地使用ADO.NET Entity Framework來操作Model。

AppIdentityDbContext _db=new AppIdentityDbContext();

Note note=new Note();

_db.Notes.Find(id);//搜索操作

_db.Notes.Remove(note);//刪除操作

_db.Notes.Add(note);//增加操作

_db.Entry(note).State=EntityState.Modified;//更新操作

_db.SaveChanges();

2.2 View構(gòu)建

視圖負(fù)責(zé)向用戶展示界面,并提供輸入元素使用戶可以輸入相關(guān)信息,以筆記管理系統(tǒng)中的筆記添加頁面為例,如圖6所示。

Note視圖代碼片段如圖7所示。

如上圖代碼所示,model代表當(dāng)前視圖所引用的模型,該模型由控制器傳輸?shù)揭晥D中,視圖接著可以從Note模型中的相應(yīng)字段數(shù)據(jù),展示在界面上,同時,還可以在界面上輸入元素中修改數(shù)據(jù),通過提交行為提交到相應(yīng)的控制器,由控制器將所修改數(shù)據(jù)寫回到模型中,并將模型保存回數(shù)據(jù)庫中。

2.3 Controller構(gòu)建

控制器負(fù)責(zé)定義程序相關(guān)的行為,可以將模型數(shù)據(jù)發(fā)送到相應(yīng)的視圖中,也可以從視圖中收集用戶數(shù)據(jù),更新相關(guān)模型,并寫回數(shù)據(jù)庫。

在筆記編輯頁面中,我們可以在輸入元素中輸入文字,然后通過“保存”按鈕提交頁面數(shù)據(jù)到相應(yīng)控制器,如圖8代碼片段所示,點擊后頁面將提交到Html.BeginForm()指定的Controller,在這里,所提交到的Controller默認(rèn)情況下與視圖所在的文件夾同名,即NoteController,對應(yīng)的Controller中的方法與視圖同名,即Create。

提交到相應(yīng)的控制器后,控制器通過方法所傳參數(shù)獲取到用戶所作的修改,然后將修改更新到模型中,如圖9所示,隨后控制器將模型更新回數(shù)據(jù)庫。

3 結(jié)束語

本文對ASP.NET MVC開發(fā)技術(shù)的主要技術(shù)架構(gòu)進行了剖析,分析了技術(shù)中所采用的架構(gòu)與設(shè)計模式等,并相應(yīng)地在筆記管理頁面中應(yīng)用了該技術(shù),以展示出該技術(shù)架構(gòu)對頁面開發(fā)模式的影響。ASP.NET MVC由于需要開發(fā)人員自行使用代碼對頁面進行布局,使得開發(fā)人員需要對CSS、HTML等技術(shù)有著比較好的掌握。從運行效率上看,ASP.NET MVC由于更強調(diào)使用傳統(tǒng)HTML,輕量化了Web開發(fā),頁面源代碼沒有過多多余或者重量級的HTML標(biāo)簽數(shù)據(jù),使得系統(tǒng)運行效率得到了提升。

【參考文獻】

[1]周文紅.基于ASP.NET MVC框架的Web應(yīng)用開發(fā)[J].計算機與現(xiàn)代化,2013(10):197-199.

[2]林樂逸.基于ASP.NET MVC和實體框架的軟件項目管理平臺[D].上海交通大學(xué),2012.

[3]盧俊瑋,常琳,陳昀錕.MVC模式與ASP.NET MVC框架的技術(shù)研究[J].電腦知識與技術(shù),2010,6(19):5160-5162.

[4]葉紅衛(wèi).基于ASP.NET MVC框架的Web設(shè)計[J].河北北方學(xué)院學(xué)報(自然科學(xué)版),2009,25(06):61-65.

[5]李園,陳世平.MVC設(shè)計模式在ASP.NET平臺中的應(yīng)用[J].計算機工程與設(shè)計,2009,30(13):3180-3184.

[6]林慶,朱翠苗,鄭廣成,賈洪艷,吳旻.基于ASP.NET的MVC設(shè)計模式的研究[J].計算機工程與設(shè)計,2008(01):167-169.

[7]徐朝輝,樊銀亭.MVC設(shè)計模式在.NET三層結(jié)構(gòu)開發(fā)中的研究和實現(xiàn)[J].北京電子科技學(xué)院學(xué)報,2007(02):70-73.

[8]龔薇華,王晨光,俞歡軍.基于MVC模式和.NET的公司內(nèi)部管理信息系統(tǒng)設(shè)計[J].計算機工程與設(shè)計,2007(09):2142-2144.

[9]陳曉丹,鄭毅.ASP. NET開發(fā)環(huán)境下的WebForm與MVC 設(shè)計模式[J].武漢工程職業(yè)技術(shù)學(xué)院學(xué)報,2009,39-40.

[10]Adam Freeman.Pro ASP.NET MVC 5[M].Apress,2013.

[11]林樂逸.基于ASP_NETMVC和實體框架的軟件項目管理平臺[D].上海:上海交通大學(xué),2013.

[12]楊曉吟.ASP.NET MVC架構(gòu)與Web開發(fā)分析[J].自動化與儀器儀表,2018(07):32-35+38.

主站蜘蛛池模板: 国产无码在线调教| 国产精品网址你懂的| 456亚洲人成高清在线| 精品久久久无码专区中文字幕| 成人午夜视频在线| 国产网友愉拍精品视频| 丁香六月激情婷婷| 久久久久九九精品影院| 91亚洲视频下载| 国产资源站| 欧美激情视频在线观看一区| 香蕉99国内自产自拍视频| www.91中文字幕| 国产成人亚洲精品色欲AV| 一级毛片中文字幕| 国产呦视频免费视频在线观看| 天堂网国产| 国产精品大尺度尺度视频| 在线观看91精品国产剧情免费| 欧美午夜理伦三级在线观看| 黄色一及毛片| 亚洲视频三级| 性欧美在线| 毛片视频网址| 久久先锋资源| 99re经典视频在线| 精品少妇人妻一区二区| 免费a在线观看播放| 国产成人1024精品| 91美女视频在线观看| 精品国产自在在线在线观看| 亚洲无码免费黄色网址| 亚州AV秘 一区二区三区| 国产成人做受免费视频| 国产精品欧美在线观看| 日本手机在线视频| 国产欧美另类| 亚洲三级a| 女高中生自慰污污网站| 欧美另类视频一区二区三区| 国产视频你懂得| 色男人的天堂久久综合| 99性视频| 欧洲一区二区三区无码| 国产午夜无码专区喷水| 尤物亚洲最大AV无码网站| 精品国产免费第一区二区三区日韩| 麻豆精品在线| 久久激情影院| 99成人在线观看| A级毛片无码久久精品免费| 日韩色图区| 亚洲第一视频网站| 九九热视频精品在线| 色悠久久综合| 国产成人乱无码视频| 九九热精品在线视频| 成人午夜福利视频| 日韩欧美国产中文| 在线精品亚洲国产| 成人字幕网视频在线观看| 亚洲第一极品精品无码| 国内精品自在自线视频香蕉 | 久久精品国产精品一区二区| 亚洲黄网在线| 国产鲁鲁视频在线观看| 亚卅精品无码久久毛片乌克兰| 久久人搡人人玩人妻精品| 亚洲AⅤ无码国产精品| 欧美天堂在线| 任我操在线视频| 日韩a级片视频| 天天综合色天天综合网| 亚洲有码在线播放| 久久一级电影| 亚洲免费成人网| 综合成人国产| hezyo加勒比一区二区三区| 精品视频一区二区观看| 黄色免费在线网址| 美女无遮挡拍拍拍免费视频| 国产中文一区a级毛片视频|