三層架構是一種軟體開發的分層思想,將開發過程分解,並且各層之間的調用有明確的順序,
不至於發生程式碼混亂和程式碼堆疊的情況。
使用三層架構每層都有自己所負責的任務。各其所能,
在日後的維護或需求變化時,能夠快速的修改且不必修改更多的程式碼。
經典的三層架構由表示層、業務邏輯層和資料存取層組成,
三層的含義如下:
(1) 表示層:也稱為表現層或界面層,簡寫為 UI,主要是指與使用者互動的界
面。用於接收使用者輸入的數據和顯示處理後使用者需要的數據。
(2) 業務邏輯層:簡寫為 BLL,主要是指處理相關的業務邏輯,如計算費用,
各種驗證等邏輯。
(3) 資料存取層:簡寫為 DAL,主要是指與資料庫相關的操作,直接與資料庫
接觸。可以將存儲在資料庫中的資料提交給業務層,同時將業務層處理後
的資料存儲到資料庫中。
表示層、業務邏輯層、資料存取層之間的關係描述如下:
使用者的需求通過界面反饋給表示層,
表示層再反饋給業務邏輯層,
業務邏輯層再反饋給資料存取層,
資料存取層最後到資料庫中操作
資料,操作後再返回給業務邏輯層,
業務邏輯層再返回給表示層。
其實在這三層中還有一層是實體層,也稱為 Model 層,
雖然它不屬於三層,但是在程式設計中,實體層可以對應到資料庫
,這樣資料可以在三層之間傳遞資料。
先建立一個三層式架構的專案
步驟如下
我們就以圖文來說明
1.
3.先刪除class1.cs
4.再依相同方式建立 DAL、Models 並刪除各自的 class1.cs
建立一個 Users 的資料表
CREATE TABLE [dbo].[Users](
[LoginId] [int] IDENTITY(1000,1) NOT NULL,
[Pwd] [varchar](20) NOT NULL,
[UserName] [varchar](20) NOT NULL,
PRIMARY KEY CLUSTERED
(
[LoginId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO