1

これは、以下の質問と重複している可能性があります。ただし、提供された回答を使用しても、問題を解決できませんでした。

質問

私の問題はこれとほぼ同じようです。2 つの .edmx ファイルを格納するクラス ライブラリがあり、このファイルは他の 2 つのクラス ライブラリによって参照されます。単体テスト プロジェクトでデータベース クエリをテストしたいのですが、常に次のエラーが発生します。

「型初期化子が例外をスローしました...System.TypeInitializationException: 'MyModel' という名前の接続文字列がアプリケーション構成ファイルに見つかりませんでした」ここで、'MyModel' は明らかに 2 つの .edmx モデルのいずれかを指します。

このトピックに対する以前の回答に基づいて、EntityFramework プロジェクトから App.config ファイルをクラス ライブラリ プロジェクトと実際の単体テスト プロジェクトの両方にコピーしましたが、それでもエラーが発生します。

どんな助けでも大歓迎です。違いがある場合は、VS2012 と .Net 4.5 を使用しています。

ありがとうリチャード

4

1 に答える 1

2

app.config をクラス ライブラリに配置しても問題は解決しません。クラス ライブラリは起動アプリケーションではなく、単に参照されているだけなので、app.config が実際に読み取られることはありません。テストするときは、接続文字列が構築されているときに DbContext に直接渡す必要があります。

于 2013-04-11T16:42:59.787 に答える