ObjectDataSource.Select 方法

定義

藉由呼叫 SelectMethod 屬性所識別的方法,同時使用 SelectParameters 集合中的參數,從基礎資料儲存擷取資料。

public:
 System::Collections::IEnumerable ^ Select();
public System.Collections.IEnumerable Select ();
member this.Select : unit -> System.Collections.IEnumerable
Public Function Select () As IEnumerable

傳回

資料列的 IEnumerable 清單。

範例

如需程式碼範例,請參閱ObjectDataSource

備註

指定的方法可能具有任何方法簽章,但必須傳回或衍生自下表所列的其中一種類型,控制項 ObjectDataSource 才能成功呼叫它。

傳回類型 動作
IEnumerable 方法 IEnumerable 會傳 Select 回 。
DataTable DataView 使用 方法 DataTable 所傳 Select 回的 來建立 。
DataView 方法 DataView 會傳 Select 回 。
DataSet 會擷取第 DataSet 一個 DataTableDataView ,並由 方法建立和傳 Select 回 。
Object 物件會包裝在一個專案 IEnumerable 集合中,並由 方法傳 Select 回。

屬性所 SelectMethod 識別的方法可以是 Visual Basic) 方法中的實例方法或 static (Shared 。 如果是實例方法,則每次呼叫 屬性所 SelectMethod 指定的方法時,都會建立並終結商務物件,不同之處在于相同的實例是用來呼叫 屬性所指定的方法 SelectMethod ,以及 屬性所 SelectCountMethod 指定的方法。 方法會 SelectIEnumerable 回介面。 不過,若要啟用快取和篩選案例,傳回值必須是 DataSet 物件。 雖然 類別 DataSet 未實作 IEnumerable 介面,但 ObjectDataSource 控制項會自動擷取預設 DataView 控制項,以實作 IEnumerable

Select在執行作業之前,會 OnSelecting 呼叫 方法來引發 Selecting 事件。 您可以處理 Selecting 事件來檢查參數的值,並在作業之前 Select 執行任何前置處理。 若要執行資料擷取作業,物件會 ObjectDataSourceView 使用反映來建立 屬性所 TypeName 識別之物件的實例。 然後,它會使用任何相關聯的 SelectParameters 屬性呼叫 屬性所 SelectMethod 識別的方法。 Select作業完成之後, OnSelected 會呼叫 方法來引發 Selected 事件。 您可以處理 Selected 事件來檢查任何傳回值、輸出參數和例外狀況,以及執行任何後續處理。

SelectMethod如果屬性傳 DataSet 回 、 DataTableDataView 物件和快取已啟用,則會 ObjectDataSource 從 中擷取資料,並在作業期間 Select 將資料儲存至快取。 根據 和 CacheExpirationPolicy 屬性的組合 CacheDuration 所指定的快取行為,建立、捨棄或重新整理快取。

SelectMethod如果屬性傳 DataSet 回 或 DataTable 物件,而且 FilterExpression 已指定屬性,則會使用任何提供 FilterParameters 的屬性進行評估,並在作業期間 Select 將產生的篩選套用至資料清單。

方法 Select 會委派給 SelectObjectDataSource 控制項相關聯之 的 ObjectDataSourceView 方法。

如需參數合併、物件存留期和方法解析的詳細資訊,請參閱 SelectMethod

資料繫結控制項

ObjectDataSource當控制項與資料繫結控制項相關聯時,例如 GridView 控制項,就不需要從頁面代碼呼叫 Select 方法。 方法 Select 會改為由資料繫結控制項直接叫用。

適用於

另請參閱