データ処理拡張機能の Command クラスの実装

Command オブジェクトを使用して、要求を作成し、その要求をデータ ソースに渡します。コマンド テキストは、テキスト、XML など多くのさまざまな構文形式を使用できます。結果が返されると、Command オブジェクトは、DataReader オブジェクトとして結果を返します。

Command クラスを作成するには、IDbCommand を実装します。また、DataReader オブジェクトとして結果セットを返すために、ExecuteReader メソッドを実装します。Command クラスの ExecuteReader メソッドには、引数として CommandBehavior 列挙を取得する実装を含める必要があります。データ処理拡張機能をレポート デザイナーに配置するには、ExecuteReader メソッドで SchemaOnly の場合を処理する実装を含める必要があります。スキーマだけの実装は、レポート デザイナーにフィールド一覧を提供するために使用します。ExecuteReader メソッドによって返される DataReader オブジェクトは、フィールド、つまり列の型および名前の情報を結果セットに含める必要があります。

必要に応じて、Command クラスは、IDbCommandAnalysis を実装できます。このインターフェイスにより、実装クラスでクエリを分析して、クエリのパラメーターの一覧を返すことができます。IDbCommandAnalysis インターフェイスの機能を使用できるのはレポート デザイナーだけです。IDbCommandAnalysis を実装すると、レポート デザイナーのユーザーがプレビュー モードでレポートを実行するたびに、ユーザーにパラメーターを入力するように要求できます。さらに、[データセット] ダイアログの [パラメーター] タブでパラメーターを表示できます。

注意注意

カスタム データ処理拡張機能でパラメーターをサポートしない場合は、IDbCommandAnalysis を実装する必要はありません。

Command クラス実装の例については、「SQL Server Reporting Services Product Samples」(英語) を参照してください。