モデル ファイルとマッピング ファイルを組み込みリソースにする方法 (Entity Framework)

エンティティ フレームワーク を使用すると、エンティティ データ モデル (EDM) モデル ファイルとマッピング ファイルをアプリケーションの組み込みリソースとして配置できます。モデル ファイルとマッピング ファイルが組み込まれたアセンブリは、エンティティ接続と同じアプリケーション ドメインに読み込む必要があります。詳細については、「接続文字列 (Entity Framework)」を参照してください。既定では、エンティティ データ モデル ツールで EDM モデル ファイルとマッピング ファイルが組み込まれます。EdmGen を使用する場合または EDM を手動で定義する場合は、エンティティ フレームワーク アプリケーションでモデル ファイルとマッピング ファイルが組み込みリソースとして配置されるように、この手順を使用します。

[!メモ]

組み込みリソースを保持するには、EDM を変更するときにこの手順を繰り返す必要があります。

モデル ファイルとマッピング ファイルを組み込むには

  1. ソリューション エクスプローラで、.csdl 概念モデル ファイルを選択します。

  2. [プロパティ] ペインで、[ビルド アクション][組み込まれたリソース] に設定します。

  3. .ssdl ストレージ モデル ファイルと .msl マッピング ファイルに対して手順 1. と手順 2. を繰り返します。

  4. ソリューション エクスプローラで、App.config ファイルをダブルクリックし、次のいずれかの形式に基づいて connectionString 属性の Metadata パラメータを変更します。

    • Metadata=``res://<assemblyFullName>/<resourceName>;

    • Metadata=``res://*/<resourceName>;

    • Metadata=res://*;

    詳細については、「接続文字列 (Entity Framework)」を参照してください。

次の接続文字列は、AdventureWorks Sales Model の組み込み EDM モデル ファイルとマッピング ファイルを参照しています。この接続文字列は、プロジェクトの App.config ファイルに格納されています。

  <connectionStrings>
      <add name="AdventureWorksEntities" connectionString="metadata=
           res://AWSalesSample/Microsoft.Samples.Edm.AdventureWorks.csdl|
           res://AWSalesSample/Microsoft.Samples.Edm.AdventureWorks.ssdl|
           res://AWSalesSample/Microsoft.Samples.Edm.AdventureWorks.msl;
              provider=System.Data.SqlClient;provider connection string='Data Source=localhost;
           Initial Catalog=AdventureWorks;Integrated Security=True;'"
           providerName="System.Data.EntityClient" />
</connectionStrings>

参照

処理手順

接続文字列を定義する方法 (Entity Framework)
EntityConnection の接続文字列を作成する方法 (Entity Framework)

その他のリソース

Entity Data Model の定義 (Entity Framework タスク)
Entity Data Model ツール