Entity Framework プロジェクトを手動で構成する方法

Visual Studio プロジェクトで エンティティ データ モデル ウィザードを使用した場合、自動的に エンティティ データ モデル (EDM) が生成され、エンティティ フレームワーク を使用するようにプロジェクトが構成されます。詳細については、「Entity Data Model ウィザードを使用する方法 (Entity Framework)」を参照してください。エンティティ フレームワーク を使用して Visual Studio プロジェクトを手動で構成することもできます。この操作は、手動または EDM ジェネレータ (EdmGen.exe) ユーティリティを使用して EDM を定義している場合に行います。

このトピックの例では、モデルおよび AdventureWorks Sales Model のマッピング ファイルを使用します。AdventureWorks Sales Model は、エンティティ フレームワーク ドキュメントのタスク関連のトピック全般で使用されます。

AdventureWorks Sales Model を使用するように Visual Studio プロジェクトを構成するには

  1. ソリューション エクスプローラで、System.Data.Entity.dll および System.Runtime.Serialization.dll のアセンブリ参照を追加します。

  2. 次の EDM マッピング ファイルをプロジェクトに追加します。

    • AdventureWorks.csdl

    • AdventureWorks.msl

    • AdventureWorks.ssdl

    これらのファイルの作成の詳細については、「Entity Data Model を手動で定義する方法 (Entity Framework)」を参照してください。

  3. 先ほどプロジェクト ディレクトリに追加した 3 つのファイルを選択します。[プロジェクト] メニューの [プロジェクトに含める] をクリックします。

  4. プロジェクト ディレクトリに追加した 3 つのファイルを選択します。[プロジェクト] メニューの [プロパティ] をクリックします。

  5. [プロパティ] ペインで、[出力ディレクトリにコピー][新しい場合はコピーする] に設定します。

  6. プロジェクトのアプリケーション構成ファイル (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" />
        <add name="NorthwindEntities" connectionString="metadata=.\Northwind.csdl|.\Northwind.ssdl.\Northwind.msl;
             provider=System.Data.SqlClient;provider connection string='Data Source=localhost;
             Initial Catalog=Northwind;Integrated Security=True;MultipleActiveResultSets=True'" 
             providerName="System.Data.EntityClient" />
    </connectionStrings>
    

    プロジェクトにアプリケーション構成ファイルが存在しない場合は、[プロジェクト] メニューの [新しい項目の追加] を選択し、[全般] カテゴリの [アプリケーション構成ファイル] を選択して、[追加] をクリックすることによって追加できます。

  7. プロジェクト ディレクトリでコマンド プロンプトを開き、実際のプロジェクトに該当するコマンドを実行します。なお、改行は削除してください。

    • C# の場合

      "%windir%\Microsoft.NET\Framework\v3.5\edmgen.exe" /mode:EntityClassGeneration 
      /incsdl:.\AdventureWorks.csdl /outobjectlayer:.\AdventureWorks.Objects.cs /language:CSharp
      
    • Visual Basic の場合

      "%windir%\Microsoft.NET\Framework\v3.5\edmgen.exe" /mode:EntityClassGeneration 
      /incsdl:.\AdventureWorks.csdl /outobjectlayer:.\AdventureWorks.Objects.vb /language:VB
      

    これにより、C# または Visual Basic で、概念モデルに基づくオブジェクト レイヤ ファイルが生成されます。

  8. 前の手順で生成されたオブジェクト レイヤ ファイルをプロジェクトに追加します。

  9. アプリケーションのコード ページで、次の 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
    ' Prepend with the root namespace for the project.
    Imports AdventureWorksModel
    
    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;
    using AdventureWorksModel;
    

参照

概念

クイック スタート (Entity Framework)

その他のリソース

Entity Data Model ツール