方法 : テーブルとビューにマップされた LINQ to SQL クラスを作成する (O/R デザイナ)
更新 : November 2007
データベース テーブルおよびビューにマップされた LINQ to SQL クラスは、エンティティ クラスと呼ばれます。エンティティ クラスはレコードにマップされますが、エンティティ クラスの個々のプロパティはレコードを構成する個々の列にマップされます。データベース テーブルまたはビューに基づくエンティティ クラスを作成するには、サーバー エクスプローラまたはデータベース エクスプローラから、テーブルまたはビューをオブジェクト リレーショナル デザイナ (O/R デザイナ) にドラッグします。O/R デザイナは、クラスを生成し、特定の LINQ to SQL 属性を適用して、LINQ to SQL 機能 (DataContext のデータ通信編集および編集機能) を有効にします。LINQ to SQL クラスの詳細については、「LINQ to SQL オブジェクト モデル」を参照してください。
メモ : |
---|
O/R デザイナは、1:1 のマッピング関係のみをサポートする単純なオブジェクト リレーショナル マッパーです。つまり、エンティティ クラスには、データベース テーブルまたはビューとの 1:1 のマッピング関係しか持たせることができません。1 つのエンティティ クラスを複数のテーブルにマップするなど、複雑なマッピングはサポートされていません。ただし、複数の関連テーブルを結合するビューにエンティティ クラスをマップすることはできます。 |
データベース テーブルまたはビューにマップされる LINQ to SQL クラスの作成
サーバー エクスプローラまたはデータベース エクスプローラからテーブルまたはビューを O/R デザイナにドラッグすると、更新の実行に使用される DataContext の各メソッドと、エンティティ クラスが作成されます。
既定では、LINQ to SQL ランタイムによって、更新可能なエンティティ クラスの変更をデータベースに保存するロジックが作成されます。このロジックは、テーブルのスキーマ (列定義と主キー情報) に基づいています。この動作が不要な場合は、既定の LINQ to SQL ランタイムの動作の代わりに、ストアド プロシージャを使用して挿入、更新、および削除を実行するようにエンティティ クラスを構成できます。詳細については、「方法 : 更新、挿入、および削除を実行するストアド プロシージャを割り当てる (O/R デザイナ)」を参照してください。
メモ : |
---|
お使いのマシンで、Visual Studio ユーザー インターフェイスの一部の要素の名前や場所が、次の手順とは異なる場合があります。これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。詳細については、「Visual Studio の設定」を参照してください。 |
データベース テーブルまたはビューにマップされる LINQ to SQL クラスを作成するには
サーバー エクスプローラまたはデータベース エクスプローラで、[テーブル] または [ビュー] を展開し、アプリケーションで使用するデータベース テーブルまたはビューを探します。
テーブルまたはビューを O/R デザイナにドラッグします。
エンティティ クラスが作成され、デザイン サーフェイスに表示されます。このエンティティ クラスには、選択されたテーブルまたはビューの列にマップされるプロパティが含まれています。
オブジェクト データ ソースの作成とフォームへのデータの表示
O/R デザイナを使用してエンティティ クラスを作成したら、オブジェクト データ ソースを作成し、エンティティ クラスを [データ ソース] ウィンドウに読み込むことができます。
LINQ to SQL エンティティ クラスに基づいてオブジェクト データ ソースを作成するには
[ビルド] メニューの [ソリューションのビルド] をクリックしてプロジェクトをビルドします。
[データ] メニューの [データ ソースの表示] をクリックします。
[データ ソース] ウィンドウで、[新しいデータ ソースの追加] をクリックします。
[データソースの種類を選択] ページで、[オブジェクト] をクリックし、[次へ] をクリックします。
ノードを展開し、クラスを探して選択します。
メモ : Customer クラスが使用可能でない場合は、ウィザードをキャンセルし、プロジェクトをビルドしてからウィザードを再実行します。
[完了] をクリックしてデータ ソースを作成し、Customer エンティティ クラスを [データ ソース] ウィンドウに追加します。
[データ ソース] ウィンドウからフォームに項目をドラッグします。
参照
処理手順
チュートリアル : LINQ to SQL クラスの作成 (O/R デザイナ)
方法 : ストアド プロシージャや関数にマップされる DataContext メソッドを作成する (O/R デザイナ)
チュートリアル : エンティティ クラスの挿入、更新、および削除の動作のカスタマイズ
方法 : LINQ to SQL クラス間の関連付け (リレーションシップ) を作成する (O/R デザイナ)