ObjectDataSourceView.ExecuteSelect(DataSourceSelectArguments) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
藉由呼叫由 TypeName 屬性所識別的方法並傳遞 SelectMethod 集合中的任何值,可以從 SelectParameters 屬性所識別的物件中擷取值。
protected public:
override System::Collections::IEnumerable ^ ExecuteSelect(System::Web::UI::DataSourceSelectArguments ^ arguments);
protected internal override System.Collections.IEnumerable ExecuteSelect (System.Web.UI.DataSourceSelectArguments arguments);
override this.ExecuteSelect : System.Web.UI.DataSourceSelectArguments -> System.Collections.IEnumerable
Protected Friend Overrides Function ExecuteSelect (arguments As DataSourceSelectArguments) As IEnumerable
參數
- arguments
- DataSourceSelectArguments
DataSourceSelectArguments,用於針對資料要求基本資料擷取以外的作業。
傳回
資料列的 IEnumerable 清單。
例外狀況
傳遞給 ExecuteSelect(DataSourceSelectArguments) 方法的 arguments
指定資料來源應在擷取資料時執行一些額外工作,以透過擷取的資料啟用分頁或排序,但是資料來源控制項不支援所要求的功能。
-或-
ExecuteSelect(DataSourceSelectArguments) 方法傳回的物件不是 DataSet 或 DataTable,且啟用了快取。 針對 DataSet 控制項,只可以快取 DataTable 和 ObjectDataSourceView 物件。
-或-
同時啟用快取和用戶端模擬。 啟用用戶端模擬時,ObjectDataSource 不支援快取。
ExecuteSelect(DataSourceSelectArguments) 方法傳回的物件為 DataSet,但在其 Tables 集合中沒有資料表。
-或-
EnablePaging 屬性設為 true
,但 StartRowIndexParameterName 和 MaximumRowsParameterName 屬性都未設定。
備註
類別 ObjectDataSourceView 會實作繼承 ExecuteSelect 的方法,以使用商務物件擷取資料。 頁面開發人員和資料系結控制項作者不會直接呼叫 ExecuteSelect 方法;而是使用公開的方法 Select 。
指定的方法可以有任何方法簽章,但必須針對下表所列的 ObjectDataSource 控制項傳回其中一種類型,才能成功呼叫它。
傳回類型 | 動作 |
---|---|
IEnumerable | 方法 IEnumerable 會傳 Select 回 。 |
DataTable | DataView會使用 DataTable 方法所 Select 傳回的 來建立 。 |
DataSet | 會擷取第一個 DataTableDataSet ,並由 DataView 方法建立並傳 Select 回 。 |
Object | 物件會包裝在一個專案 IEnumerable 中,並由 方法傳 Select 回。 |
在執行資料擷取之前,會 OnSelecting 呼叫 方法來引發 Selecting 事件。 您可以處理此事件來檢查參數的值,並在作業之前執行任何前置處理。
若要執行選取作業, ObjectDataSourceView 控制項會使用反映來呼叫 屬性所識別 SelectMethod 的方法,以及集合中 SelectParameters 任何相關聯的參數,然後執行它。 作業完成之後, OnSelected 會呼叫 方法來引發 Selected 事件。 您可以處理此事件來檢查任何傳回值和錯誤碼,以及執行任何後續處理。
Select如果方法傳 DataSet 回物件並啟用快取,則會 ObjectDataSourceView 從 擷取資料,並在作業期間將資料儲存至快取。 根據 和 CacheExpirationPolicy 屬性的組合 CacheDuration 所指定的快取行為,建立、捨棄或重新整理快取。
Select如果方法傳 DataSet 回物件且 FilterExpression 已指定屬性,則會與任何提供 FilterParameters 的屬性一起評估,並在作業期間 Select 將產生的篩選套用至資料清單。
如需傳回所選取資料列數目的資訊,請參閱 Select 。