首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET 2.0 ObjectDataSource 控制項完整指南:無程式碼繫結商務邏輯層

     編輯:關於ASP.NET

ASP.NET 2.0 引入五大內建資料來源控制項(SqlDataSource、AccessDataSource、ObjectDataSource、XmlDataSource、SiteMapDataSource),其中 ObjectDataSource 專為多層架構設計,能直接繫結商務邏輯層(BLL)物件,實現「零程式碼」資料存取。

為什麼選擇 ObjectDataSource?

傳統 ASP.NET 1.x 需手動撰寫 DataSource 指派與 DataBind() 呼叫。ObjectDataSource 採宣告式語法,在標記中指定 BLL 類別與方法對應 Select、Insert、Update、Delete 操作,即可自動處理資料繫結、分頁、排序、編輯等功能,大幅降低程式碼量。

ASP.NET 2.0 五大內建資料來源控制項

運作機制:ObjectDataSource 為代理模式

ObjectDataSource 充當 Web 資料控制項(GridView、DetailsView 等)與 BLL 物件之間的代理:

  1. 資料控制項需要資料時,呼叫 ObjectDataSource 的 Select() 方法。
  2. ObjectDataSource 轉而呼叫對應的 BLL 方法取得資料。
  3. 支援插入/更新/刪除時,同樣透過 ObjectDataSource 傳遞參數至 BLL 對應方法。

ObjectDataSource 代理運作圖解

設定步驟總覽

  1. 指定 TypeName:完整 BLL 類別名稱(含命名空間)。
  2. 對應方法:在 SelectMethod、InsertMethod 等屬性指定 BLL 方法名稱。
  3. 參數設定:透過 SelectParameters 等集合綁定查詢字串、Session、控制項值等參數來源。
  4. 繫結資料控制項:將 GridView 等控制項的 DataSourceID 設為 ObjectDataSource ID。

進階優勢

  • 支援自訂分頁與排序邏輯(需 BLL 方法配合)。
  • 內建快取機制(EnableCaching、CacheDuration)。
  • 可搭配 ObjectCreating、ObjectDisposing 事件管理 BLL 實例生命週期(如依賴注入容器)。

結語

ObjectDataSource 是 ASP.NET WebForms 時代連結表現層與商務層的關鍵橋樑,雖然現代開發多轉向 MVC/Web API,但在維護既有 WebForms 專案時,掌握其完整用法仍具實務價值。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved