次の方法で共有


エンティティをデータベース テーブルにマップする方法

このトピックでは、ADO.NET Entity Data Model デザイナ (エンティティ デザイナ) を使用して、エンティティ型をデータベース テーブルにマップする方法について説明します。[マッピングの詳細] ウィンドウでは、1 つ以上のテーブルに対するエンティティのマッピング、マッピングの条件の定義、およびプロパティ マッピングの列の指定を行うことができます。

[!メモ]

このトピックでは、1 つのエンティティ型を 1 つのデータベース テーブルにマップする方法について説明します。ただし、1 つのエンティティ型を複数のデータベース テーブルにマップすることも可能です。この操作を行う方法の例については、「チュートリアル : 複数のテーブルへのエンティティのマッピング」を参照してください。

次の表で、デザイン画面でエンティティ型を選択したときの [マッピングの詳細] ウィンドウのフィールドについて説明します。

名前 説明

テーブル内のすべての列のアルファベット順の一覧が含まれています。

演算子

マッピングまたは条件演算子が表示されます。

値/プロパティ

列にマップされたエンティティ プロパティが表示されます。

フィールドが空白の場合は、その列がスカラ プロパティにマップされていないことを示します。

フィールドをクリックすると、すべてのスカラ プロパティが表示されるドロップダウン リストになります。

マッピングを追加するには

  1. デザイン画面またはモデル ブラウザでエンティティ型を右クリックして、[テーブル マッピング] を選択します。

    [マッピングの詳細] ウィンドウにテーブル マッピングが表示されます。

  2. [マッピングの詳細] ウィンドウで、[テーブルまたはビューの追加] をクリックします。

    フィールドが、現在のマッピングに含まれていないストレージ モデルのすべてのテーブルを含むドロップダウン リストになります。

  3. 一覧からテーブルを選択します。

    ウィンドウに [<テーブル名> にマップ] ノードが追加されます。このノードには、テーブル列とエンティティ プロパティの間の既定のマッピングが含まれます。列名とプロパティ名が一致するかどうかがウィザードによってチェックされます。一致する場合、既定のマッピングは、列と同じ名前のプロパティの間です。

    新しいマッピング ノードの下に別の [テーブルまたはビューの追加] 行が表示されます。この行を使用して、別のテーブルをマッピングに追加できます。

  4. [<テーブル名> にマップ] ノードを展開します。

    [条件の追加] オプションを使用して条件を追加できます。条件を使用すると、選択した条件列の値に基づいて、マッピング システムで階層内の特定の型とテーブル内の行との間でマッピングを行うことができます。エンティティ型は、マップ先の各テーブルに対して一連の条件を定義できます。詳細については、「条件を追加または削除する方法」を参照してください。

    [列マッピング] ノードも表示されます。

  5. [列マッピング] ノードを展開します。

    テーブル内のすべての列の一覧が表示されます。列がマップされる既定のプロパティが [値/プロパティ] 見出しの下に表示されます。

  6. マップする列を選択して、対応する [値/プロパティ] フィールドを右クリックします。

    すべてのスカラ プロパティのドロップダウン リストが表示されます。

  7. 適切なプロパティを選択します。

  8. 各テーブル列ごとに、手順 6. と 7. を繰り返します。

テーブル マッピングを削除するには

  1. [<テーブル名> にマップ] ノードをクリックします。

    フィールドは、ドロップダウン リストになります。

  2. [削除] をクリックします。

列マッピングを削除するには

  1. マップする列を選択して、[値/プロパティ] フィールドをクリックします。

    フィールドは、ドロップダウン リストになります。

  2. [削除] をクリックします。

参照

その他のリソース

Entity Data Model ツールのタスク
ADO.NET Entity Data Model デザイナのシナリオ