摘 要ASP.NET是軟件設計架構,主要通過業務層、數據層及表示層等符合架構實現計算機控制器及視圖的功能。隨著我國科學技術的不斷發展,MVC設計模式也越來越成熟,其逐漸被廣泛應用到ASP.NET平臺中。基于此,本文就簡單闡述了MVC設計模式的概念,并且研究了其在ASP.NET平臺中的應用。
【關鍵詞】ASP.NET MVC設計模式 應用研究
ASP.NET是一種計算機的體系平臺框架,也是.NET框架的重要組成部分。ASP.NET體系結構支持目前網絡分布式的應用,傳統Web開發模型中具有復雜性,并且管理的安全性較差,其就對這些缺點進行了完善,并且有效實現了面向對象的技術。從全面分析,ASP.NET還有多處不足,包括其要在傳統Web頁面中現實信息,流程控制及業務邏輯存在耦合性等等。所以,本文就將MVC設計模式應用到ASP.NET平臺中,以此完善上述的問題。
1 MVC設計模式的概念
1.1 MVC設計模式的內涵
MVC(model-view-controller)即模型-視圖-控制器,其在20世紀70年代初被提及,是第一代基于視窗的計算機圖像用戶交互平臺與界面。MVC架構將程序分為3個部分:模型、視圖、控制器。
視圖指的是用戶交互界面,在MVC設計模式中,分別處理業務流程及程序界面顯示,視圖負責采集界面數據及用戶請求,并且將其精心處理,處理業務流程由模型部分完成。模型指的是業務流程的處理,它是MVC設計模式的重要內容,具有系統的業務規則及核心流程。模型能夠接受視圖用戶數據及請求,并且對其進行處理,將處理之后的結果交給視圖,業務流程的處理對其他模塊是封裝,只是提供模塊間的訪問接口,使模塊之間具有獨立性,便于維護的系統。在用戶對界面顯示有其它新的要求時,不需要對后臺業務邏輯進行修改,而在業務邏輯發生變化的時候,能使用戶界面保持不變。控制器是指轉發和接收用戶的請求,它從視圖接收用戶請求,并不處理用戶的業務數據,而是根據用戶提供的業務信息傳遞給其相對的模型進行處理,之后選擇對應的視圖展示給用戶。
MVC設計模式把業務處理,程序輸入輸出控制及數據顯示分離開來,并且描述了不同對象間的通信方式,為系統開發提供了清晰的設計框架及方法,使得系統的可維護性,可擴展性,靈活性以及封裝性大大提高。在Web應用中使用MVC模式,能夠限制模塊的功能范圍,有效降低系統耦合度,提高軟件代碼的復用率、性能及可用戶型,以此提高軟件的質量。
2 ASP.NET平臺中MVC設計模式的應用優勢
2.1 使ASP.NET平臺設計更加清晰
MVC設計模式最重要的優點就是能夠使一個模型在同一時間創建多個視圖并使用,改變模型傳播機制及數據,同步所有的控制器及關聯視圖的行為,這種同步性充分發揮了其的可擴展性,使ASP.NET平臺在實現某些功能的過程中更加協調。在此種傳播機制中,有效提高了控制器的獨立工作能力。
2.2 可移植性
MVC模型都是相互獨立的,將他們融入ASP.NET另外平臺中的操作方法就是修改另外平臺中的控制器及視圖數據。那么以此就可以看出來,MVC設計模式為ASP.NET提供了多個平臺結構,并不只是在基本的設計界面中。
3 ASP.NET平臺中MVC設計模式的應用
3.1 系統的架構
以某公司的績效平臺為例,共分為16個子系統,每個子系統中具有6個功能模塊,根據用戶的使用需求,共分為4級登錄,每級用戶具有不同的權限及頁面視圖。全面考慮用戶的需求,用戶界面具有I/O交互、用戶操作及顯示問題的功能,不僅要求用戶界面穩定,并且還要求其能夠根據用戶的不同需求調整顯示的形式和內容,MVC設計模式就能夠很好的實現這些要求。此績效平臺根據Web三層結構分為業務層、數據層及表示層,表示層實現了MVC設計模式的控制器及視圖功能,業務層及數據層中包含了模型。
3.2 模型的設計與實現
模型的主要目的就是對程序域中的數據和行為進行管理,主要分為數據訪問層及業務邏輯層。數據訪問層對數據庫交互和操作進行連接,處理與數據庫有關的操作;業務邏輯層通過控制器解決用戶的請求,之后處理業務邏輯,將處理之后的數據返到控制器中,便于控制器選擇視圖顯示。
3.2.1 業務邏輯層
在此績效平臺設計的過程中,首先定義業務處理對象及實體對象。業務處理對象對處理邏輯進行封裝,并且調用邏輯模型,響應反饋提交給對應的視圖組件;業務實體對象使模型和視圖實現交互,通過屬性的定義對客戶端數據進行描述及讀寫。以此實現了業務邏輯的重用。
此績效平臺主要是針對業務流程的,在整個過程中涉及了用戶、負責人及測量員三方面內容,用戶能夠實現數據的查詢、瀏覽及比較;負責人能夠實現過程及指標的評價和分析;測量員能夠將測量參數輸入到系統中,并且將指標的實際測量數據進行計算。業務流程對象主要是根據業務的流程進行抽取的,根據系統責任及問題域,使系統實體變為概念類,通過類之間的關聯抽取類,類方法為系統事件的識別及操作。由于考慮到系統的可擴展性,抽象出指標目錄、過程對象、參數對象、指標說明、明細表對象等業務實體對象,根據業務流程及對象,抽象出測量對象、過程分析評價對象、指標分析評價對象等業務處理對象。
3.2.2 數據訪問層
此績效平臺訪問數據中具有數據庫交互與連接的基本操作,對公共基本類進行了定義,其它訪問類繼承與公共基本類。測量員每個月都要提供實測值,這些數據都在臨時表中存放,在一定時間內能夠對其進行多次的提交和修改。在提交完數據之后,責任人要對其進行評價和分析,將分析評價之后的數據存入到數據庫表中,任何人都不能對其進行修改。應用程序在數據訪問層訪問層數據庫時是通過DataProvider實現的。
3.2.3 視圖的設計和實現
ASP.NET開發平臺中的視圖設計是通過aspx頁面實現的,.NET視圖設計中不僅有Web窗體、HTML、數據等控件,并且還具有用戶控件,通過此控件人們能夠實現設計的可視化,另外,頁面設計的編寫還可以通過HTML設計工具進行。
此績效平臺中,視圖對應著各模塊中的.aspx設計工具,.aspx文件對應著系統的各用戶界面。在本系統的設計過程中,根據用戶、管理人員、測量員及負責人的需求,定義多種界面,包括指標管理、查詢分析、測量、用戶管理、分析評價等。系統通過過程選擇接口,測量員通過權限選擇考核過程,通過時間選擇接口,過程的測量界面顯示此過程中的指標信息和選定時間實測值。提供指標及參數的輸入相互關聯,每個指標對應不同的輸入界面。
3.2.4 控制器的設計和實現
ASP.NET使用的是分散控制的形式,能夠分離視圖中的模型、代碼及控制器,每個aspx文件都對應著一個后臺代碼,通過后臺代碼實現控制器功能。.aspx頁面會將控件調用的方法在分離類中實現,.cs文件代碼能夠實現控制器的功能。在此績效平臺中,控制器是模型和視圖的協調者,主要功能是接受并且處理用戶的請求,還能夠通過模型中業務邏輯的調用組件獲取數據對象,根據目前的狀態及業務操作結果選擇面向客戶的視圖,對顯示瀏覽頁面進行控制。控制器與視圖和模型的交互為:測量員通過視圖將過程選擇的請求發出去,通過控制器讀取數據字典,之后提取過程信息,從而判斷用戶的身份是否與過程相匹配。
在加載.aspx頁面的時候,系統會調用控制器的Page-Load事件,通過讀取數據字典綁定指標信息及每個月實測值,在綁定過數據之后,用戶界面呈現出這個月的指標績效考核數據。
4 結束語
本文首先介紹了MVC設計模式的內涵,并且闡述了ASP.NET平臺中MVC設計模式的優勢,之后通過以某公司的績效平臺為例,闡述了ASP.NET平臺中MVC設計模式的應用,通過此可以看出來,兩者相互結合具有較好的可擴展性,并且能夠實現一個模型的多個視圖,也可以使用多個控制器相互獨立工作,并且模型發生改變的時候視圖會自動刷新。本文設計的績效平臺具有系統性,提高了代碼的復用率,并且降低了成本,不僅滿足了用戶的需求,還具有較好的安全性及維護性。
參考文獻
[1]張梅.淺析MVC設計模式在ASP.NET平臺中的應用[J].移動信息,2015(09):00048-00048.
[2]滿高媛.MVC設計模式在ASP.NET框架中的應用研究[J].軟件導刊,2016,15(04):149-151.
[3]姜翠.MVC設計模式在ASP.NET平臺中的應用探究[J].太原城市職業技術學院學報,2016(04):183-185.
[4]肖洋.基于ASP.NET的MVC框架的應用開發模式研究[J].電子技術與軟件工程,2016(02):63-63.
[5]李園,陳世平.MVC設計模式在ASP.NET平臺中的應用[J].計算機工程與設計,2009,30(13):3180-3184.
[6]徐朝暉,樊銀亭.MVC設計模式在ASP.NET應用開發中的研究和實現[J].微型電腦應用,2007,23(10):4-6.
作者簡介
劉紅霞(1981-),女,山西省汾陽市人。碩士學位。助理講師。研究方向為計算機應用技術。
作者單位
呂梁學院汾陽師范分校 山西省汾陽市 032200