ObjectDataSource.Select メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
SelectParameters コレクション内のパラメーターを使用して、SelectMethod プロパティによって識別されるメソッドを呼び出して、基になるデータ ストレージからデータを取得します。
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の最初のDataTableが抽出され、DataViewが作成され、Select メソッドによって返されます。 |
| Object | オブジェクトは、1 要素 IEnumerable コレクションにラップされ、 Select メソッドによって返されます。 |
SelectMethod プロパティで識別されるメソッドには、インスタンス メソッドまたはstatic (Visual Basic のShared) メソッドを指定できます。 インスタンス メソッドの場合、ビジネス オブジェクトは、 SelectMethod プロパティで指定されたメソッドが呼び出されるたびに作成および破棄されます。ただし、同じインスタンスを使用して、 SelectMethod プロパティで指定されたメソッドと、 SelectCountMethod プロパティで指定されたメソッドを呼び出します。
Select メソッドは、IEnumerable インターフェイスを返します。 ただし、キャッシュとフィルター処理のシナリオを有効にするには、戻り値が DataSet オブジェクトである必要があります。
DataSet クラスはIEnumerable インターフェイスを実装しませんが、ObjectDataSource コントロールは、IEnumerableを実装する既定のDataView コントロールを自動的に抽出します。
Select操作が実行される前に、OnSelecting メソッドが呼び出されて、Selecting イベントが発生します。 Selecting イベントを処理して、パラメーターの値を調べ、Select操作の前に前処理を実行できます。 データ取得操作を実行するために、 ObjectDataSourceView オブジェクトはリフレクションを使用して、 TypeName プロパティによって識別されるオブジェクトのインスタンスを作成します。 次に、関連付けられているSelectParametersプロパティを使用して、SelectMethod プロパティによって識別されるメソッドを呼び出します。 Select操作が完了すると、OnSelected メソッドが呼び出され、Selected イベントが発生します。 Selected イベントを処理して、戻り値、出力パラメーター、例外を調べ、後処理を実行できます。
SelectMethod プロパティがDataSet、DataTable、またはDataViewオブジェクトを返し、キャッシュが有効になっている場合、ObjectDataSourceはデータを取得し、Select操作中にキャッシュに保存します。 キャッシュは、 CacheDuration プロパティと CacheExpirationPolicy プロパティの組み合わせで指定されたキャッシュ動作に基づいて作成、破棄、または更新されます。
SelectMethod プロパティがDataSetまたはDataTable オブジェクトを返し、FilterExpression プロパティが指定されている場合は、指定されたFilterParametersプロパティで評価され、結果のフィルターはSelect操作中にデータの一覧に適用されます。
Select メソッドは、ObjectDataSource コントロールに関連付けられているObjectDataSourceViewのSelect メソッドにデリゲートします。
パラメーターのマージ、オブジェクトの有効期間、およびメソッドの解決の詳細については、 SelectMethodを参照してください。
Data-Bound コントロール
ObjectDataSource コントロールがデータ バインド コントロール (GridView コントロールなど) に関連付けられている場合、ページ コードから Select メソッドを呼び出す必要はありません。 Select メソッドは、代わりにデータ バインド コントロールによって直接呼び出されます。