Entity Framework プロジェクトを手動で構成する方法
Visual Studio プロジェクトで Entity Data Model ウィザードを使用した場合、自動的に .edmx ファイルが生成され、Entity Framework を使用するようにプロジェクトが構成されます。 詳細については、「Entity Data Model ウィザードを使用する方法 (Entity Framework)」を参照してください。 Entity Framework を使用して Visual Studio プロジェクトを手動で構成することもできます。 これを行うのは、モデル ファイルとマッピング ファイルを手動で定義した場合、または EDM ジェネレーター (EdmGen.exe) ユーティリティを使用して定義した場合です。
このトピックの例では、モデルおよび AdventureWorks Sales Model のマッピング ファイルを使用します。 AdventureWorks Sales Model は、Entity Framework ドキュメントのタスク関連のトピック全般で使用されます。
AdventureWorks Sales Model を使用するように Visual Studio プロジェクトを構成するには
ソリューション エクスプローラーで、System.Data.Entity.dll および System.Runtime.Serialization.dll のアセンブリ参照を追加します。
次のモデル ファイルとマッピング ファイルをプロジェクトに追加します。
AdventureWorks.csdl
AdventureWorks.msl
AdventureWorks.ssdl
これらのファイルの作成の詳細については、「方法: モデル ファイルとマッピング ファイルを手動で定義する (Entity Framework)」を参照してください。
先ほどプロジェクト ディレクトリに追加した 3 つのファイルを選択します。 [プロジェクト] メニューの [プロジェクトに含める] をクリックします。
プロジェクト ディレクトリに追加した 3 つのファイルを選択します。 [プロジェクト] メニューの [プロパティ] をクリックします。
[プロパティ] ペインで、[出力ディレクトリにコピー] を [新しい場合はコピーする] に設定します。
プロジェクトのアプリケーション構成ファイル (App.config) を開き、次の接続文字列を追加します。
<connectionStrings> <add name="AdventureWorksEntities" connectionString="metadata=.\AdventureWorks.csdl|.\AdventureWorks.ssdl|.\AdventureWorks.msl; provider=System.Data.SqlClient;provider connection string='Data Source=localhost; Initial Catalog=AdventureWorks;Integrated Security=True;Connection Timeout=60; multipleactiveresultsets=true'" providerName="System.Data.EntityClient" /> </connectionStrings>
If your project does not have an application configuration file, you can add one by selecting Add New Item from the Project menu, selecting the General category, selecting Application Configuration File, and then clicking Add.
プロジェクト ディレクトリでコマンド プロンプトを開き、実際のプロジェクトに該当するコマンドを実行します。なお、改行は削除してください。
C# の場合
"%windir%\Microsoft.NET\Framework\v4.0\edmgen.exe" /mode:EntityClassGeneration /incsdl:.\AdventureWorks.csdl /outobjectlayer:.\AdventureWorks.Objects.cs /language:CSharp
Visual Basic の場合
"%windir%\Microsoft.NET\Framework\v4.0\edmgen.exe" /mode:EntityClassGeneration /incsdl:.\AdventureWorks.csdl /outobjectlayer:.\AdventureWorks.Objects.vb /language:VB
これにより、C# または Visual Basic で、概念モデルに基づくオブジェクト レイヤー ファイルが生成されます。
前の手順で生成されたオブジェクト レイヤー ファイルをプロジェクトに追加します。
アプリケーションのコード ページで、次の using ステートメント (Visual Basic の場合は Imports) を追加します。
Imports System Imports System.Linq Imports System.Collections.Generic Imports System.Text Imports System.Data Imports System.Data.Common Imports System.Data.Objects Imports System.Data.Objects.DataClasses
using System; using System.Linq; using System.Collections.Generic; using System.Text; using System.Data; using System.Data.Common; using System.Data.Objects; using System.Data.Objects.DataClasses;