.NET Framework アプリケーションの開発用の Visual Studio データセット ツール

Note

データセットと関連クラスは、アプリケーションがデータベースから切断されている間にアプリケーションがメモリ内のデータを操作できるようにする、2000 年代初期からのレガシ .NET Framework テクノロジです。 テクノロジが特に役立つのは、ユーザーがデータを変更し、変更をデータベースに戻して保持できるようにするアプリケーションです。 データセットは非常に優れたテクノロジであることが証明されていますが、新しい .NET アプリケーションでは Entity Framework Core を使用することをお勧めしています。 Entity Framework には、オブジェクト モデルとして表形式データを操作する、より自然な方法が用意されており、よりシンプルなプログラミング インターフェイスが備わっています。

DataSet オブジェクトは、本質的に小型データベースである、メモリ内オブジェクトです。 これには、開いた接続を維持しなくても 1 つ以上のデータベースのデータを格納し、変更することができるオブジェクトの DataTableDataColumnDataRow が含まれてます。 データセットではデータに対する変更についての情報が保持されるため、更新内容を追跡し、アプリケーションが再接続した状態になったときにデータベースに送り返すことができます。

データセットと関連クラスは、.NET API の System.Data 名前空間で定義されています。 データセットは、ADO.NET を使用して、コード内で動的に作成したり変更したりすることができます。 このセクションのドキュメントでは、Visual Studio デザイナーを使用してデータセットを操作する方法を示しています。 デザイナーで作成されるデータセットでは、TableAdapter オブジェクトを使用してデータベースとやり取りします。 プログラムによって作成されるデータセットでは、DataAdapter オブジェクトを使用します。 プログラムによるデータセットの作成については、「DataAdapters と DataReaders」を参照してください。

アプリケーションで行う必要があるのはデータベースからのデータの読み取りのみで、更新、追加、削除を実行しない場合は、DataReader オブジェクトを使用して汎用の List オブジェクトまたは別のコレクション オブジェクト内にデータを取得すれば、通常はパフォーマンスを向上させることができます。 データを表示しようとしている場合は、ユーザー インターフェイスをそのコレクションにデータバインドすることができます。

データセット ワークフロー

Visual Studio には、データセットの操作を簡略化するためのツールが用意されています。 基本的なエンドツーエンドのワークフローは以下のとおりです。

データセットと N 層アーキテクチャ

N 層データ アプリケーションでのデータセットの詳細については、「n 層アプリケーションでのデータセットの操作」を参照してください。

データセットと XML

XML に対するデータセットの変換については、「XML データのデータセットへの読み込み」と「データセットを XML として保存する」を参照してください。