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

ASP.NET MVC設計之美

2016-05-14 20:09:35穆海明劉盼齊斌
藝術科技 2016年8期
關鍵詞:模型

穆海明 劉盼 齊斌

摘 要:隨著國內電商平臺的發展,網站的需求變得越來越大,開發網站的技術雖然很多,但真正主流的不過只有幾種,而ASP.NET MVC便是很好的一種選擇。ASP.NET MVC它是微軟的一個web開發框架,融合了敏捷開發的思想與技術和asp.net平臺的精華部分,正是設計網站的最好方式之一。本文將介紹ASP.NET MVC框架的內容,以及如何便捷地開發網站,僅此希望這門技術為IT行業的發展帶來巨大進步。

關鍵詞:MVC;控制器;視圖;模型;路由;三層架構

1 MVC模式

1.1 控制器(Controller)

MVC模式中的控制器(Controller)主要負責響應用戶的輸入,并且在響應時修改模型(model)。通過這種方式,MVC模式中的控制器主要關注的是應用程序流、輸入數據的處理,以及對相關視圖輸出數據的提供。從本質上來講,控制器只是簡單的C#類,在控制器中的每一個public方法都稱為一個動作方法,即可以用某個URL通過web來調用它,以執行一個動作。MVC約定,把控制器都放在一個名為Controller的文件夾中,這是Visual Studio在建立項目時為用戶自動創建的。這項約定雖然不一定要遵循,單遵循著一約定會為開發帶來很大的便捷,也就是常說的約定大于配置。

1.2 視圖(View)

視圖的職責是向用戶提供用戶界面。當控制器針對被請求的URL執行完合適的邏輯后,就將要顯示的內容委托給視圖。不像基于文件的Web框架,比如ASP.NET Web Forms和PHP,視圖本身不會被直接訪問,瀏覽器不能直接指向一個視圖并渲染它。相反,視圖總是被控制器渲染,因為控制器為它提供了要渲染的數據。目前為止控制器操作只是簡單的調用了return View()來進行渲染,還不需要指定視圖的文件名。可以這么做,是因為它們利用了ASP.NET MVC框架的一些隱式約定,這些約定定義了視圖選擇邏輯。記住之前在控制器所說的“約定大于配置”在這里依然適用。這是ASP.NET MVC相對于Form的進步之處,也是它的特色。

Razor視圖引擎是ASP.NET MVC 3中新擴展的內容,并且他是默認視圖引擎,Razor為視圖提供一種精簡的語法,最大限度地減少了語法和額外的字符。這樣就有效地減少了語法障礙,并且在視圖標記語言中也沒有新的語法規則。Razor的設計理念是簡單直觀的,對于大多數應用,我們不必關心語法,只需要在插入代碼時,輸入HTML和@符號。

1.3 模型(Models)

模型是一個比較抽象的概念,主要是利用模型對象來構建ASP.NET MVC應用程序,可以使用C#語言編寫模型定義類,然后根據指定的模型類型使用基架生成應用程序的其他部分。這便是模型最常用也是最基礎的一種存在。

在MVC中,控制器是C#類,通常派生于System.Web.MVC.Controller,開發者自己創建的每一個控制器通常都是從這個Controller派生而來的,派生而來的類中的每一個public方法都稱為一個動作方法,它通過ASP.NET 路由系統與一個可配置的URL相關聯。當一個請求被發送到與一個動作方法相關聯的URL時,便執行控制器類中的語句,以進行域模型上的一些操作,然后選擇一個視圖來顯示給客戶端。這就是控制器、模型及視圖之間的交互。

2 路由

2.1 URL

URI代表統一資源標識符。URL是標識了一個資源的字符串。從技術角度看,所有URL都是URI。W3C認為“URL是一個正式的概念,但它非常有用:URL是URI的一種類型,它通過表示自身的主要訪問機制來標識資源”。換句話說,URI是某種資源的標識符,而URL則為獲取該資源提供了具體的信息。

2.2 URL模式

路由系統用一組路由來實現它的功能。這些路由共同組成了應用程序的URL架構(Schema)或方案(Scheme),這種URL架構(或方案)是應用程序能夠識別并能對之作出響應的一組URL。不需要手動輸入打算支持的各個URL,而是讓每一條路由都包含一個URL模式,用它與一個輸入URL進行比較。如果該模式與這個URL匹配,那么它(URL模式)便被路由系統用來對這個URL進行處理。

3 三層架構的網站設計

所謂的三層指的是,表現層,業務層和數據層,它的優點是每一層僅用少量的代碼實現各層的功能,非常靈活,如果把數據訪問代碼與業務邏輯層分離,當數據庫服務器更改后,你只需要更改數據訪問的代碼,因為業務邏輯層是不變的。邏輯層和數據層的分離后讓你后期的改動變得更加方便,便于開發和后期調試。而且這種架構使得程序員之間可以出現協助工作,這種更高效的開發便是如今的主流,下面具體介紹每層具體的功能。

3.1 表現層(Presentation Layer)

表現層用于用戶接口的展示,以及用業務層的類和對象來“驅動”這些接口。在ASP.NET中,該層包括aspx頁面、用戶控制、服務器控制以及某些與安全相關的類和對象。

3.2 業務層(Business Tier)

業務層用于訪問數據層,從數據層取數據、修改數據以及刪除數據,并將結果返回給表現層。在ASP.NET中,該層包括使用SqlClient或OleDb從SQL Server或Access數據庫取數據、更新數據及刪除數據,并把取得的數據放到DataReader或DataSet中返回給表現層。返回的數據也許只有一個整形數字,比如一個表的行記錄數目,但這也要用數據層的數據進行計算。

3.3 數據層(Data Tier)

數據層是數據庫或者數據源。在.NET中,通常它是一個SQL Server或Access數據庫,但不僅限于此兩種形式,它還可能是Oracle,mySQL,但ASP.NET MVC最好就是用SQL Server。

參考文獻:

[1] Adam Freeman(美).精通ASP.NET MVC4[M].李萍,徐燕萍,林逸,譯.人民郵電出版社,2014.

[2] Jon Galloway,Brad Wilson,K.Scott Allen,David Matson(美) . ASP.NET MVC 5高級編程[M].孫元帥,譯.清華大學出版社,2015.

作者簡介:穆海明(1994—),男,天津人,沈陽理工大學本科在讀。

劉盼(1994—),男,山西運城人,沈陽理工大學本科在讀。

齊斌(1994—),男,遼寧盤錦人,沈陽理工大學本科在讀。

猜你喜歡
模型
一半模型
一種去中心化的域名服務本地化模型
適用于BDS-3 PPP的隨機模型
提煉模型 突破難點
函數模型及應用
p150Glued在帕金森病模型中的表達及分布
函數模型及應用
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: 白浆免费视频国产精品视频| 九九热精品在线视频| 狠狠色综合网| 国产成人亚洲欧美激情| 露脸一二三区国语对白| 国产一区自拍视频| 二级特黄绝大片免费视频大片| 国产一区二区福利| 欧美日韩福利| 国产主播喷水| 国产日韩丝袜一二三区| 亚洲女同一区二区| 欧美色图久久| 中国国产高清免费AV片| 成人久久精品一区二区三区| 国产一级二级三级毛片| 亚洲床戏一区| 制服丝袜国产精品| 永久免费av网站可以直接看的| 久久综合色视频| 国产主播在线一区| 精品国产www| 国产精女同一区二区三区久| 综合网久久| 亚洲一区二区日韩欧美gif| 亚洲精品第一页不卡| 男女猛烈无遮挡午夜视频| 亚洲午夜国产片在线观看| 婷婷亚洲最大| 2021国产精品自拍| 国产成人a在线观看视频| 性欧美在线| 亚洲欧美精品在线| 亚洲天堂久久| 欧美笫一页| 国产亚洲精品无码专| 国产高清在线观看| 亚洲乱伦视频| 男女性色大片免费网站| 91口爆吞精国产对白第三集 | 国产区人妖精品人妖精品视频| 一级香蕉人体视频| 欧美成人午夜视频| 国产欧美日韩一区二区视频在线| 精品国产成人三级在线观看| 亚洲免费三区| 亚洲欧美成人在线视频| 免费a级毛片视频| 草逼视频国产| 欧美精品亚洲二区| 久久精品国产免费观看频道| 嫩草国产在线| 国产啪在线| 黄色在线网| 中文字幕亚洲精品2页| 人妻精品全国免费视频| 国产69精品久久久久妇女| 国产精品99久久久久久董美香| 亚洲男人天堂2018| 成人av专区精品无码国产 | 自偷自拍三级全三级视频| 日本午夜网站| 日韩av无码精品专区| 乱人伦中文视频在线观看免费| 九九免费观看全部免费视频| 在线视频亚洲欧美| 在线国产91| 激情综合图区| 亚洲成人精品在线| 欧美专区日韩专区| 视频一区亚洲| 国产福利免费观看| 国产欧美日韩综合一区在线播放| 国产精品久久久久久搜索| 欧美精品影院| 国产成人免费手机在线观看视频| 国产精品视频白浆免费视频| 中文字幕2区| 欧美在线精品怡红院| 女人18毛片水真多国产| 在线五月婷婷| 国产精品毛片一区|