チュートリアル : 単純なデータ アプリケーションの作成

アプリケーション開発で最も一般的なシナリオの 1 つは、データベースのデータを Windows フォームに表示することです。 [データ ソース] ウィンドウから Windows アプリケーションのフォームに項目をドラッグすることで、フォームにデータを表示できます。 このチュートリアルでは、1 つのデータベース内の関連する 2 つのテーブルのデータを表示するアプリケーションを作成する方法を示します。

WPF を使用してデータ アプリケーションを作成する方法については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。

Silverlight を使用してデータ アプリケーションを作成する方法については、「Visual Studio でのデータへの Silverlight コントロールのバインド」を参照してください。

ASP.NET Web フォームを使用してデータ アプリケーションを作成する方法については、「ASP.NET Web Forms Data Access Options」を参照してください。

このチュートリアルでは、次の作業について説明します。

  • Windows ベース アプリケーションを作成します。

  • データ ソース構成ウィザードを使用して、Northwind データベースの Customers テーブルと Orders テーブルに基づいてアプリケーションにデータセットを作成して設定します。

  • Customers テーブルのデータを表示するコントロールを追加します。

  • 選択した顧客に基づいて注文を表示するコントロールを追加します。

  • さまざまな顧客を選択し、その顧客に対して正しい注文が表示されるかどうかを確認して、アプリケーションをテストします。

  • データを変更し、データベースに戻して保存します。

ビデオへのリンク このトピックのビデオ版については、「ビデオ デモ: 単純なデータ アプリケーションの作成」を参照してください。

必須コンポーネント

このチュートリアルを実行するには、次のコンポーネントが必要です。

プロジェクトの作成

最初に Windows ベース アプリケーションを作成します。

注意

次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。詳細については、「Customizing Development Settings in Visual Studio」を参照してください。

プロジェクトを作成するには

  1. [ファイル] メニューで新しいプロジェクトを作成します。

  2. [Windows フォーム アプリケーション] をクリックし、DataWalkthrough という名前を付けます。 詳細については、「.NET Framework を使用したクライアント アプリケーションの開発」を参照してください。

  3. [OK] をクリックします。

    DataWalkthrough プロジェクトが作成され、ソリューション エクスプローラーに追加されます。

データ ソースの作成

この手順では、データ ソース構成ウィザードを使用し、Northwind サンプル データベース内の Customers テーブルと Orders テーブルに基づいてデータセットを作成します。

データ ソースを作成するには

  1. [データ] メニューの [データ ソースの表示] をクリックします。

  2. [データ ソース] ウィンドウで、ツール バーの [新しいデータ ソースの追加] をクリックしてデータ ソース構成ウィザードを起動します。

  3. [データソースの種類を選択] ページで、[データベース] をクリックし、[次へ] をクリックします。

  4. [データ接続の選択] ページで、次のいずれかの操作を行います。

    • Northwind サンプル データベースへのデータ接続がドロップダウン リストに表示されている場合は選択します。

      または

    • [新しい接続] を選択して [接続の追加] または [接続の変更] ダイアログ ボックスを表示します。

  5. データベースにパスワードが必要な場合は、該当するオプションを選択して重要情報を含め、[次へ] をクリックします。

  6. [アプリケーション構成ファイルへの接続文字列を保存] ページで、[次へ] をクリックします。

  7. [データベース オブジェクトの選択] ページの [テーブル] ノードを展開します。

  8. Customers テーブルと Orders テーブルを選択し、[完了] をクリックします。

    プロジェクトに NorthwindDataSet が追加され、[データ ソース] ウィンドウに Customers テーブルと Orders テーブルが表示されます。

Customers テーブルのデータを表示するコントロールの作成

[データ ソース] ウィンドウから Windows フォームにアイテムをドラッグして、データ バインド コントロールを作成します。

顧客データ (親レコード) を表示するコントロールを作成するには

  1. [データ ソース] ウィンドウで [Customers] テーブルをクリックし、ドロップダウン矢印をクリックします。

  2. Customer テーブルのコントロール リストの [詳細] をクリックします。

  3. [データ ソース] ウィンドウから Form1 にメインの [Customers] ノードをドラッグします。

    説明のラベルが付いたデータ バインド コントロールがフォームに表示されます。 コンポーネント トレイには、次のコンポーネントが表示されます。

    • NorthwindDataSet。 Customers テーブルと Orders テーブルを含む型指定されたデータセットです。

    • CustomersBindingSource。 フォーム上のコントロールを NorthwindDataSet の Customers データ テーブルにバインドする BindingSource です。

    • CustomersBindingNavigator。 Customers テーブル内のレコードの走査に使用される BindingNavigator です。

    • CustomersTableAdapter。 データベースと NorthwindDataSet の間で通信を行う TableAdapter です。 詳細については、「TableAdapter の概要」を参照してください。

    • TableAdapterManager。 データセット内のすべての TableAdapter コンポーネントの挿入、更新、および削除順序の制御に使用される TableAdapterManager コンポーネントです。 詳細については、「TableAdapterManager の概要」を参照してください。

Orders テーブルのデータを表示するコントロールの作成

各顧客 (子レコード) の注文を表示するコントロールを作成するには

  • [データ ソース] ウィンドウで、[Customers] ノードを展開し、Customers テーブルの最後の列を選択します。この列は Fax 列の下の展開できる [Orders] ノードですが、これを Form1 の一番下にドラッグします。 Customers テーブルの階層構造において、このノードは特定の顧客に関連する注文を表します。これに対し、メインの Orders ノードは、特定の顧客の注文ではなく、Orders テーブル内の全レコードを表します。

    フォームに DataGridView が追加され、新しい BindingSource コンポーネント (OrdersBindingSource) と TableAdapter (OrdersTableAdapter) がコンポーネント トレイに追加されます。

    注意

    [プロパティ] ウィンドウを開き、OrdersBindingSource コンポーネントを選択します。DataSource プロパティと DataMember プロパティを調べ、関連データを表示するためのデータ バインディングの設定を確認します。Orders テーブルと異なり、DataSourceCustomersBindingSource (親テーブルの BindingSource) に設定されます。DataMember プロパティは FK_Orders_Customers に設定されます。これは、複数のテーブルを関連付ける DataRelation オブジェクトの名前です。

アプリケーションのテスト

アプリケーションをテストするには

  1. F5 キーを押します。

  2. さまざまな顧客を選択し、フォーム上のグリッドに正しい注文が表示されることを確認します。

  3. 1 つ以上のレコードを変更します。

  4. [データの保存] (ディスク アイコン) をクリックします。

  5. 変更がデータベースに保存されたことを確認します。

次の手順

アプリケーションの要件に応じて、マスター/詳細形式のフォームの作成後に、追加の操作を実行できます。 このチュートリアルで行うことができる拡張には次のものがあります。

参照

概念

Visual Studio でのデータへの Windows フォーム コントロールのバインド

アプリケーションでデータを受け取る準備

アプリケーションへのデータのフェッチ

Visual Studio でのデータへのコントロールのバインド

アプリケーションでのデータ編集

データの検証

データの保存

TableAdapterManager の概要

その他の技術情報

データに関するチュートリアル

Visual Studio のデータ アプリケーションの概要

Visual Studio でのデータへの接続

階層更新

n 層アプリケーションでのデータセットの操作

LINQ to SQL [LINQ to SQL]