與ASP相比ASP.NET在Web應(yīng)用開發(fā)上無疑更容易,更有效率。Web開發(fā)大部分還是圍繞著數(shù)據(jù)操作,建立數(shù)據(jù)庫存儲數(shù)據(jù),編寫代碼訪問和修改數(shù)據(jù),設(shè)計(jì)界面采集和呈現(xiàn)數(shù)據(jù)。走過Asp.net學(xué)習(xí)入門階段后,真正開始著手開發(fā)一個Web項(xiàng)目時,才發(fā)現(xiàn)錯綜復(fù)雜的數(shù)據(jù)與關(guān)聯(lián)根本就不是SqlDataSource和AccessDataSource數(shù)據(jù)源控件能簡單解決的,而恰恰是被忽視了的一個ObjectDataSource數(shù)據(jù)源控件才是真正踏入開發(fā)門檻的關(guān)鍵,由此也對三層架構(gòu)模式有了初步體驗(yàn)。
一.ASP.NET三層架構(gòu)介紹
設(shè)計(jì)模式中的分層架構(gòu)(可以參考一下J2EE中MVC模式)實(shí)現(xiàn)了各司其職,互不干涉,所以如果一旦哪一層的需求發(fā)生了變化,就只需要更改相應(yīng)的層中的代碼而不會影響到其它層中的代碼。這樣就能更好的實(shí)現(xiàn)開發(fā)中的分工,有利于組件的重用。所以這些年關(guān)于模式的研究有很多成果,應(yīng)用也很廣泛。一個好的模式在程序開發(fā)和后期維護(hù)中作用重大。
ASP.NET三層架構(gòu)自底向上分為:數(shù)據(jù)訪問層(DAL),業(yè)務(wù)邏輯層(BLL)和表示層(PL)。
數(shù)據(jù)訪問層(DAL):使用了一個強(qiáng)類型的DataSet作為數(shù)據(jù)訪問層,只是單純的對數(shù)據(jù)進(jìn)行增,刪,改,查詢和判斷存在等等較通用的數(shù)據(jù)訪問方法(由SQL語句來提供),不應(yīng)該有“事務(wù)”存在。
業(yè)務(wù)邏輯層(BLL):業(yè)務(wù)邏輯層是在數(shù)據(jù)訪問層和表示層之間進(jìn)行數(shù)據(jù)交換的橋梁,按業(yè)務(wù)需求調(diào)用數(shù)據(jù)訪問層中的方法組合,集合了各種業(yè)務(wù)規(guī)則到一個BLL中,例如通過條件進(jìn)行判斷的數(shù)據(jù)操作或“事務(wù)”處理。BLL都是以類庫(Class Library)的形式來實(shí)現(xiàn)的。
表示層(PL):表示層是為客戶提供用于交互的應(yīng)用服務(wù)圖形界面,幫助用戶理解和高效地定位應(yīng)用服務(wù),呈現(xiàn)業(yè)務(wù)邏輯層中傳遞的數(shù)據(jù),用ASP.NET頁面來實(shí)現(xiàn)。
bitsCN.com聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com