方法: 新しい .edmx ファイルを作成する (Entity Data Model ツール)
このトピックでは、Entity Data Model ウィザード を使用して新しい .edmx ファイルを作成する方法について説明します。 .edmx ファイルには、概念モデルと共に、ストレージ モデルとそれらの間のマッピングの情報が含まれています。 このトピックの手順では、既存のデータベースから .edmx ファイルを生成する方法、および空の .edmx ファイルを生成する方法について説明します。
注 : |
---|
空の .edmx ファイルを生成した後、ADO.NET Entity Data Model デザイナー (エンティティ デザイナー) を使用して、エンティティおよびリレーションシップを作成できます。その後、データベース生成ウィザードを使用し、.edmx ファイルからデータベースを生成できます。詳細については、「方法: 概念モデルからデータベースを生成する (Entity Data Model ツール)」を参照してください。 |
.edmx ファイルの詳細については、「.edmx ファイルの概要 (Entity Framework)」を参照してください。 .edmx ファイルは、次の Visual Studio プロジェクト カテゴリに含めることができます。
アプリケーション プロジェクト
クラス ライブラリ
Web プロジェクト
同じプロジェクトに複数の .edmx ファイルを追加できます。また、各ファイルの対象を別々のデータベースにすることも、同じデータベース内の別々のテーブルにすることもできます。
既存のデータベースから .edmx ファイルを作成するには
.edmx ファイルの作成先となるプロジェクトを開くか作成します。
ソリューション エクスプローラーで、プロジェクト名を右クリックして [追加] をポイントし、[新しい項目] をクリックします。
[テンプレート] ペインの [ADO.NET Entity Data Model] を選択します。
ファイルの名前 (<プロジェクト名>.edmx) を入力し、[追加] をクリックします。
Entity Data Model ウィザードの先頭ページが表示されます。
[モデルのコンテンツの選択] ダイアログ ボックスで [データベースから生成] を選択し、[次へ] をクリックします。
[新しい接続] をクリックします。
[接続のプロパティ] ダイアログ ボックスが表示されます。
サーバー名を入力して認証方式を選択し、モデルの作成対象となるデータベースの名前を入力します。 [OK] をクリックします。
指定したデータベース接続の設定に従って [データ接続の選択] ダイアログ ボックスが更新されます。
注 : 既定では、エンティティ接続設定は (プロジェクトの種類に応じて) App.Config ファイルまたは Web.Config ファイルに保存されます。接続の名前を入力するか、あらかじめ入力されている既定の名前を使用します。接続情報を構成ファイルに保存しない場合は、[エンティティ接続設定の保存] チェック ボックスをオフにします。接続設定の保存の詳細については、「[データ接続の選択] ダイアログ ボックス (Entity Data Model ウィザード)」を参照してください。 [次へ] をクリックして次に進みます。
[データベース オブジェクトの選択] ダイアログ ボックスが表示されます。 既定では、.edmx ファイルに含めるデータベース オブジェクトとして選択されているオブジェクトはありません。
テーブル、ビュー、およびストアド プロシージャを表すノードを展開します。 .edmx ファイルに含めないテーブル、ビュー、およびストアド プロシージャの選択を解除します。
注 : 概念モデルから生成されたクラスは [モデル名前空間] に含まれることになります。名前空間の名前を入力するか、あらかじめ入力されている既定の名前を使用します。詳細については、「生成されるコードの概要 (Entity Data Model デザイナー)」を参照してください。 [完了] をクリックして .edmx ファイルを作成します。
Entity Data Model ウィザードは、次の処理を行います。
System.Data、System.Data.Entity、System.Core、System.Security、および System.Runtime.Serialization の各アセンブリへの参照をプロジェクトに追加します (存在していない場合)。
ストレージ モデル、概念モデル、およびマッピングをカプセル化するための .edmx ファイルを生成します。
概念モデルから生成されたクラスを含むソース コード ファイルを作成します。 ソース コード ファイルを確認するには、ソリューション エクスプローラーで .edmx ノードを展開します。 Visual Basic プロジェクトでソース コード ファイルを確認するには、.edmx ノードを展開する前に、ソリューション エクスプローラーの [すべてのファイルの表示] をクリックする必要があります。
注 : ソース コード ファイルは、.edmx ファイルから生成されます。ソース コード ファイルに手動で加えた変更は、対応する .edmx ファイルが変更されるときに上書きされます。別々のファイルに保存される部分クラスを記述することで、カスタム コードが上書きされるのを防止できます。詳細については、「Customizing Objects (Entity Framework)」を参照してください。 プロジェクトの種類に応じて App.Config ファイルまたは Web.Config ファイルを作成します。
ASP.NET Website プロジェクトの場合は、Web.config ファイル内にビルド プロバイダーを定義します。
ADO.NET Entity Data Model デザイナー (エンティティ デザイナー) に概念モデルを表示します。 エンティティ デザイナーを使用してモデルを変更する方法の詳細については、「Entity Data Model ツールのタスク」および「Entity Data Model ツールのシナリオ」を参照してください。
既存のデータベースから実際のモデルを作成する例については、「Quickstart (Entity Framework)」を参照してください。
空の .edmx ファイルを作成するには
.edmx ファイルの作成先となるプロジェクトを開くか作成します。
ソリューション エクスプローラーで、プロジェクト名を右クリックして [追加] をポイントし、[新しい項目] をクリックします。
[テンプレート] ペインの [ADO.NET Entity Data Model] を選択します。
ファイルの名前 (<プロジェクト名>.edmx) を入力し、[追加] をクリックします。
Entity Data Model ウィザードの先頭ページが表示されます。
[モデルのコンテンツの選択] ダイアログ ボックスで [空のモデル] を選択し、[完了] をクリックします。
Entity Data Model ウィザードは、次の処理を行います。
System.Data、System.Data.Entity、System.Core、System.Security、および System.Runtime.Serialization の各アセンブリへの参照をプロジェクトに追加します (存在していない場合)。
ストレージ モデル、概念モデル、およびマッピングをカプセル化するための .edmx ファイルを生成します。
注 : 生成された .edmx ファイルには、ストレージ、概念、およびマッピングに関する情報が含まれていません。このファイルを手動で変更する方法の詳細については、「Mapping Schemas and Storage Metadata (EDM)」を参照してください。概念モデルからのデータベースの生成については、「データベース生成ウィザード (Entity Data Model ツール)」および「方法: 概念モデルからデータベースを生成する (Entity Data Model ツール)」を参照してください。 - 概念モデルから生成されたクラスを格納するための空のソース コード ファイルを作成します。 ソース コード ファイルを確認するには、ソリューション エクスプローラーで .edmx ノードを展開します。 Visual Basic プロジェクトでソース コード ファイルを確認するには、.edmx ノードを展開する前に、ソリューション エクスプローラーの [すべてのファイルの表示] をクリックする必要があります。
注 : ソース コード ファイルは、.edmx ファイルから生成されます。ソース コード ファイルに手動で加えた変更は、対応する .edmx ファイルが変更されるときに上書きされます。 プロジェクトの種類に応じて App.Config ファイルまたは Web.Config ファイルを作成します。
エンティティ デザイナーを起動します。エンティティ デザイナーには、モデルを編集するためのデザイン画面があります。 エンティティ デザイナーを使用してモデルを構築する方法については、「Entity Data Model ツールのタスク」および「Entity Data Model ツールのシナリオ」を参照してください。
参照
概念
概念モデルを使用したアプリケーションの作成 (Entity Data Model ツール)