ObjectDataSource

ASP.NET ObjectDataSource 控制項表示具有數據檢索和更新功能的中間層對象。作為數據綁定控制項(如 GridView、FormView 或 DetailsView 控制項)的數據接口,ObjectDataSource 控制項可以使這些控制項在 ASP.NET 網頁上顯示和編輯中間層業務對象中的數據。

檢索和修改數據,衝突檢測,

檢索和修改數據

大多數 ASP.NET 數據源控制項,如 SqlDataSource,都在兩層應用程式層次結構中使用。在該層次結構中,表示層(ASP.NET 網頁)可以與數據層(資料庫和 XML 檔案等)直接進行通信。但是,常用的應用程式設計原則是,將表示層與業務邏輯相分離,而將業務邏輯封裝在業務對象中。這些業務對象表示層和數據層之間形成一層,從而生成一種三層應用程式結構。ObjectDataSource 控制項通過提供一種將相關頁上的數據控制項綁定到中間層業務對象的方法,為三層結構提供支持。在不使用擴展代碼的情況下,ObjectDataSource 使用中間層業務對象以聲明方式對數據執行選擇、插入、更新、刪除、分頁、排序、快取和篩選操作。
ObjectDataSource 控制項使用反射調用業務對象的方法,以對數據執行選擇、更新、插入和刪除操作。設定 ObjectDataSource 控制項的 TypeName 屬性來指定要用作源對象的類名稱。有關如何創建要與 ObjectDataSource 控制項一起使用的源數據對象的詳細信息,請參見創建 ObjectDataSource 控制項源對象。
排序和分頁
通過將請求中的排序和分頁信息從 GridView 控制項等數據綁定控制項傳遞到要處理的數據對象,ObjectDataSource 控制項可以對其他的排序和分頁功能提供支持。此後,源數據對象數據源控制項本身可以對數據進行排序,並將數據返回到各頁中。
有關將排序和分頁參數傳遞到 ObjectDataSource 控制項的數據對象的信息,請參見對 ObjectDataSource 控制項使用參數。
ObjectDataSource 控制項可以快取基礎業務對象返回的對象。但是,如果對象存放資源或保持不能在多個請求之間共享的狀態,則不能快取該對象,例如,打開的 DataReader 對象就是這樣的對象。
篩選
如果由源數據對象返回到 ObjectDataSource 控制項的對象是 DataSet 或 DataTable 對象,則 ObjectDataSource 控制項會支持使用 DataColumn 類的 Expression 屬性的語法對篩選提供支持。通過篩選,無需使用新的選擇條件對數據源進行重新查詢,即可只公開與特殊的搜尋條件匹配的行。有關更多信息,請參見使用數據源控制項篩選數據。

衝突檢測

通過將 ObjectDataSource 控制項的 ConflictDetection 屬性設定為 true,可以指定 ObjectDataSource 控制項應該包括調用源數據對象的更新方法時的原始值。此後,這些原始值可以包括在開放式並發檢查中。有關更多信息,請參見對 ObjectDataSource 控制項使用參數。有關開放式並發檢查的信息,請參見使用開放式並發。

相關詞條

熱門詞條

聯絡我們