ObjectDataSourceView クラス
アセンブリ: System.Web (system.web.dll 内)


ObjectDataSourceView クラスは、ページ コードのプログラミング可能なオブジェクトとしてではなく、主にデータ バインド コントロールによって使用されるためのものです。
ObjectDataSourceView クラスは、ObjectDataSource コントロールのデータ機能を実装します。この中には、Select、Update、Delete、Insert の各操作、並べ替え、フィルタ処理、およびビューステートで保持される設定の管理があります。
ObjectDataSourceView オブジェクトは、実行時に ObjectDataSource クラスの各インスタンスに対して作成されます。ObjectDataSource クラスのインスタンスのデータ操作への呼び出しは、ObjectDataSourceView オブジェクトのインスタンスによって処理されます。ページの開発者は、ObjectDataSourceView クラスのインスタンスに直接アクセスしません。コントロールの開発者は、ObjectDataSource クラスと ObjectDataSourceView クラスを拡張することで、カスタム データ コントロールを作成できます。
ObjectDataSourceView クラスは、リフレクションを使用してビジネス オブジェクトまたはデータ オブジェクト上のメソッドを呼び出すことにより、データ操作を実行します。実行時に、ObjectDataSource コントロールは、TypeName プロパティで指定された型のインスタンスを作成し、データ操作に適したメソッドを呼び出します。インスタンス化されたオブジェクトが、ObjectDataSourceView によってメモリにキャッシュされることはありません。データ メソッドが呼び出されるたびに、オブジェクトが作成され、破棄されます。メソッドが static (Visual Basic では Shared) の場合、インスタンスは作成されませんが、データ操作メソッドは呼び出されます。
ObjectDataSourceView は ObjectDataSource コントロールによってページ開発者に直接公開されていません。代わりに、ObjectDataSource を使用して ObjectDataSourceView のプロパティとメソッドにアクセスします。たとえば、ObjectDataSourceView プロパティの DeleteMethod を設定するには、ObjectDataSource の DeleteMethod プロパティを設定します。
データの取得データ ソース ビューが実行する最も基本的な操作は、基になるデータ ストレージからのデータ取得です。これには、データ項目の IEnumerable コレクションを取得する Select メソッドを使用します。次のデータ取得のメソッド、プロパティ、およびイベントは、ObjectDataSourceView オブジェクトによって実装され、その ObjectDataSource コントロールによってページ開発者と他の呼び出し元に直接公開されます。
ObjectDataSourceView オブジェクトは、UpdateMethod プロパティで指定されたビジネス オブジェクトまたはデータ オブジェクトのメソッドを呼び出すことで、データ更新をサポートします。GridView コントロールや DetailsView コントロールなどの、更新を自動的に実行するデータ バインド コントロールは、IOrderedDictionary インターフェイス内のパラメータを ObjectDataSourceView に渡し、ビュー オブジェクトがこれらのパラメータを UpdateParameters コレクションで見つかった任意のパラメータとマージします。
次の更新のメソッド、プロパティ、およびイベントは、ObjectDataSourceView によって実装され、その ObjectDataSource コントロールによってページ開発者と他の呼び出し元に直接公開されます。
ObjectDataSourceView オブジェクトは、InsertMethod プロパティで指定されたビジネス オブジェクトまたはデータ オブジェクトのメソッドを呼び出すことで、データの新しい行の挿入をサポートします。GridView や DetailsView などの、挿入を自動的に実行するデータ バインド コントロールは、IOrderedDictionary インターフェイス内のパラメータを ObjectDataSourceView に渡し、ビュー オブジェクトがこれらのパラメータを InsertParameters コレクションで見つかった任意のパラメータとマージします。
次の挿入のメソッド、プロパティ、およびイベントは、ObjectDataSourceView によって実装され、その ObjectDataSource コントロールによってページ開発者と他の呼び出し元に直接公開されます。
ObjectDataSourceView オブジェクトは、DeleteMethod プロパティで指定されたビジネス オブジェクトまたはデータ オブジェクトのメソッドを呼び出すことで、データの削除をサポートします。GridView や DetailsView などの、削除を自動的に実行するデータ バインド コントロールは、IOrderedDictionary インターフェイス内のパラメータを ObjectDataSourceView に渡し、ビュー オブジェクトがこれらのパラメータを DeleteParameters コレクションで見つかった任意のパラメータとマージします。次の削除のメソッド、プロパティ、およびイベントは、ObjectDataSourceView によって実装され、その ObjectDataSource コントロールによってページ開発者と他の呼び出し元に直接公開されます。
データを動的にフィルタ処理できると、データ取得がより強力になります。ObjectDataSource コントロールによってフィルタ処理がサポートされるのは、Select メソッドが DataTable オブジェクトまたは DataSet オブジェクトを返す場合だけです。FilterExpression プロパティと FilterParameters プロパティを使用すると、動的なフィルタ処理をデータ取得に適用できます。これらのプロパティは、ObjectDataSourceView オブジェクトによって実装され、その ObjectDataSource コントロールによってデータ バインド コントロールと他の呼び出し元に直接公開されます。
ObjectDataSource で取得したデータを並べ替えるには、取得後メモリ内のデータに順序を付与します。ObjectDataSource コントロールによって並べ替えがサポートされるのは、Select メソッドが DataTable または DataSet を返す場合だけです。CanSort プロパティは常に true を返します。ObjectDataSourceView では、Select メソッドを呼び出さずにそのメソッドから返される型を判断することはできないからです。SortExpression プロパティの構文は、DataView.Sort プロパティの構文と同じです。


System.Web.UI.DataSourceView
System.Web.UI.WebControls.ObjectDataSourceView


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- ObjectDataSourceView クラスのページへのリンク