91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何解析.NET三層架構

發布時間:2021-11-25 09:39:54 來源:億速云 閱讀:158 作者:柒染 欄目:編程語言

如何解析.NET三層架構,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

所謂三層架構,是在客戶端與數據庫之間加入了一個“中間層”,也叫組件層。這里所說的三層體系,不是指物理上的三層,不是簡單地放置三臺機器就是三層體系結構,也不僅僅有B/S應用才是三層體系結構,三層是指邏輯上的三層,即使這三個層放置到一臺機器上。

在項目開發的過程中,有時把整個項目分為三層架構,其中包括:表示層(UI)、業務邏輯層(BLL)和數據訪問層(DAL)。三層的作用分別如下:
表示層:為用戶提供交互操作界面,這一點不論是對于Web還是WinForm都是如此,就是用戶界面操作。我們網站展示給用戶看的界面。

業務邏輯層:負責關鍵業務的處理和數據的傳遞。復雜的邏輯判斷和涉及到數據庫的數據驗證都需要在此做出處理。根據傳入的值返回用戶想得到的值,或者處理相關的邏輯。

數據訪問層:見名知意,負責數據庫數據的訪問。主要為業務邏輯層提供數據,根據傳入的值來操作數據庫,增、刪、改或者其它。

以下我簡單介紹下一個用戶管理模塊:

為了整個項目的開發方便,我們在項目中會建幾個類庫SQLHelper,BLL,DAL,Model和一個Web網站。為了命名清晰,我們可以這樣命名這個三個工程(即在解決方案里添加的類庫):

業務邏輯層(BusinessLogicLayer):BLL,命名空間默認設置為BLL

數據訪問層(DataAccessLayer):DAL,命名空間默認設置為DAL

SQL幫助類:SQLHelper,命名空間默認設置為SQLHelper

另外我們為了數據傳遞的方便,通常再添加一個類庫,這個類庫是貫穿于整個三層架構中的。即實體類。通常命名為Model,命名空間默認值設置為:Models。其中封裝的每個類都對應一個實體,通常就是數據庫中的一個表。如數據庫中的用戶表(custom)封裝為(custom),將表中的每個字段都封裝成共有的屬性。

這樣三層架構的搭建就基本完成了。這三層有著非常強的依賴關系:

表示層 ← 業務邏輯層 ← 數據訪問層

他們之間的數據傳遞是雙向的,并且通常借助實體類傳遞數據。

那么三層架構都有哪些優點呢:

1、易于項目的修改和維護。在項目的開發過程中或者開發后的升級過程中,甚至在項目的移植過程中。這種三層架構是非常方便的。比如項目從Web移植到Form,我們只需要將表示層重新做一遍就可以了。其余兩層不用改動,只需添加到現有項目就可以了。如果不采用這種架構,只是將代碼寫到表示層。那么所有的編碼幾乎都要重新來了。

2、易于擴展。在功能的擴展上同樣如此,如有功能的添加只需把原有的類庫添加方法就可了

3、易于代碼的重用。這一點就不用解釋了。

4、易于分工協作開

還可以加個接口類庫Iinterface, 加入設計模式,使你的代碼靈活性更好,質量更高。

其實,當我們做一個項目時,我們應該先考慮一下這個項目是不是應該應用三層/多層設計時, 先得考慮下是不是真的需要? 實際上大部分程序就開個WebApplication就足夠了, 完全沒必要作的這么復雜. 而多層結構, 是用于解決真正復雜的項目需求的。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁城县| 高陵县| 遂川县| 尚义县| 治县。| 泸定县| 新泰市| 永吉县| 塔城市| 泾阳县| 吉安县| 略阳县| 诸城市| 马鞍山市| 鹿泉市| 夹江县| 兰西县| 大英县| 乌兰浩特市| 贺州市| 且末县| 鄂伦春自治旗| 玉田县| 崇礼县| 房产| 张北县| 玛纳斯县| 隆尧县| 贺兰县| 莎车县| 乌鲁木齐市| 北辰区| 马尔康县| 汝城县| 和林格尔县| 屯留县| 仁布县| 海门市| 武山县| 婺源县| 井陉县|