1

Entity Framework 4.0 と .NET 4.5 で構築されたアプリケーションがあります。デフォルトのコード生成項目を使用しているため、テーブルに対してDbContextandが生成されます。POCOs

実行時にクエリを実行すると、返されるオブジェクトは常に、元の型から継承された動的に生成されたプロキシ型になります。たとえば、Person型がある場合、クエリは常にPerson_48573435を継承する (正確な名前ではありません) を返しPersonます。

ただし、私の単体テストでは、それは起こりません。これにより、一部の動作がコンテキストによって異なります。

のインスタンス化における唯一の違いは、DbContext単体テストでは明示的に接続文字列を渡し、実行時にweb.configファイルから取得されることです。ところで、接続文字列を受け取るコンストラクターを導入できるように、TT を変更する必要がありました。ObjectContext TT に存在していたため、Microsoft がこのコンストラクターを削除した理由は不明です。とにかく、このプロキシ以外はすべて正常に動作します。

質問は?オブジェクトを返すクエリがインスタンス化される方法を制御するものは何ですか? この行動に影響を与えるために何ができたでしょうか?

4

0 に答える 0