三層架構是企業級 ASP.NET 應用的基石,透過嚴格分層實現關注點分離,提升系統可維護性、可擴展性與可測試性。本文系統梳理三層職責、具體區分與資料流向。
| 層級 | 名稱 | 核心職責 |
|---|---|---|
| 表示層 | UI / Presentation Layer (USL) | 處理用戶交互、頁面渲染、請求接收與回應。支援 Web Forms、MVC、WinForm 等多種表現形式。 |
| 業務邏輯層 | Business Logic Layer (BLL) | 封裝業務規則、流程編排、資料驗證、事務控制。作為「積木搭建者」,組合 DAL 提供的原子操作完成業務用例。 |
| 資料存取層 | Data Access Layer (DAL) | 負責與資料庫、檔案等持久化介質交互,提供 CRUD 基礎操作。不包含業務邏輯,純粹為上層提供資料服務。 |
依賴方向單向:UI → BLL → DAL,嚴禁跨層調用或反向依賴。
嚴守三層分層,能讓系統在需求變更、技術遷移、團隊協作中保持靈活與穩健。