唐世毅
摘 要:在面向對象軟件開發實踐中,越來越多的使用三層結構,結合《高職院校畢業生職業發展跟蹤評價系統》的開發,本文介紹了.NET三層結構的實現方法,并重點探討了.NET三層結構的實現原理及三層結構的具體好處。
關鍵詞:.NET;三層結構;實現原理;類型無關;可維護性
.NET三層結構是一種比較成熟的軟件開發架構,由于其適應性廣、可維護性強、適合團隊開發等優勢,在MIS類數據庫應用程序中得到了廣泛的應用。發展到Microsoft Visual Studio 2010開發平臺,微軟公司進一步實現了自動化和集成處理,讓三層結構的實現變得簡單、高效。《高職院校畢業生職業發展跟蹤評價系統》的開發應用了三層結構的架構,下面介紹在開發中三層結構的具體實現。
1 .NET三層結構的實現步驟
首先在解決方案中創建網站,即Web項目;其次創建Model項目,模板選擇“類庫”,在Model項目中添加新建項,模板選擇“ADO.NET實體數據模型”,然后根據已有的數據庫生成Model項目;最后創建BLL項目,模板選擇“類庫”。三層創建完成后,添加各層之間的依賴關系,通過“添加引用”來實現,目的是可以順利的訪問其它層的類,從而實現系統的功能。
2 .NET三層結構的框架及模型:
前述步驟完成后,形成基本框架如圖1。三層結構在本系統中的模型如圖2。
3 .NET三層結構的實現原理
Model項目中生成了一個名為MISModel.edmx的文件,即把數據庫映射成實體對象的文件,打開MISModel.Designer.cs文件,主要分為“上下文”和“實體”兩部分,“上下文”部分聲明了最重要的一個實體類“MISEntities”,該類對目標數據庫的方方面面作了詳細的描述,是連接Model項目與BLL項目最為重要的紐帶,也是實現三層結構的關鍵之所在。“實體”部分就是對目標數據庫各個基本表格的映射,一張表格對應一個實體類。
下面舉例說明,三層結構實現的關鍵技術
Web項目:
Default.aspx里一段代碼:
BLLUserManagement bllUser = new BLLUserManagement();
tblUsers aUser = bllUser.getAUsersByUserLoginName(TextBox1.Text.Trim());
BLL項目:
MISEntities misEntities = new MISEntities();
ObjectSet
ObjectSet
此處:misEntities.CreateObjectSet
Model項目:
public partial class MISEntities : ObjectContext
public partial class tblUsers : EntityObject
public partial class tblUserGroupPermission : EntityObject
4 .NET三層結構的好處:
⑴如果軟件系統發生改變,如果只改變形式,不改變邏輯功能。⑵如果軟件系統發生改變,改變了邏輯功能。包括數據庫本身發生了改變,數據訪問層可以自動生成,工作量很小;業務邏輯層和表示層的改動工作量并不大,整個工作并不繁瑣,最為關鍵的是,改動的工作清晰、有序。⑶對于較大的軟件系統,更能體現三層結構的價值。每一層分工明確,每一層的人員專注于本層的工作,同時也能很好的協作。能實現的原因在于各層相對獨立,耦合度低,關鍵技術還是類型無關性。
[參考文獻]
[1]陳超.深入理解三層軟件架構[J].福建電腦,2010(11):75-76.
[2]布什波.C#3.0設計模式[M].北京:機械工業出版社,2008:78-98.
[3]北大青鳥.在.NET框架下開發三層結構數據庫應用系統[M].北京:科學技術文獻出版社,2008:11-61.
[4]岳付強.三層架構在學位論文管理系統中的應用研究[J].西昌學院學報(自然科學版),2010(4):72-74.
[5]徐照興,劉武.基于B/S模式的高職畢業生就業數據管理系統的設計與實現[J].計算機應用與軟件,2012(9):297-300.