私はEFv4 POCOエンティティテンプレートに基づいてリポジトリを実装しました。Entity Framework v4 POCOテンプレート:リポジトリは不正なタイプのオブジェクトを返します
私はこれを行うと
public Client Load(Guid firmId,
int prettyId)
{
var client = (from c in _ctx.Clients where c.firm_id == firmId && c.PrettyId == prettyId select c).FirstOrDefault();
return client;
}
クライアントは返されたが、ここで何が起こっているタイプ
{System.Data.Entity.DynamicProxies.Client_8E92CA62619EB03F03DF1A1FC60C5B21F87ECC5D85B65759DB3A3949B8A606D3}
のでしょうか?私は、System.Data.Entity名前空間から型への参照を取り除くと思った。返されるインスタンスはClient型でなければなりません。これは単純なPOCOクラスです。
どうやらそれは財産ContextOptions.ProxyCreationEnabledに関係していると我々は(デフォルトはtrue)falseに設定した場合、それはプロキシオブジェクトを作成しませんそれらタイプはDynamicProxiesです)。しかし、我々はまた、遅延ロードの能力を失う。誰かがこのトピックに関するより多くの洞察を持っているなら、返答してください。 – mare
変更トラッキングの機能は、動的プロキシによってサポートされています。 – Slauma
**プロキシオブジェクトを無効にすると、遅延ロードを失うことは確実ですか?私は前にこの問題について聞いたことがありません...(私は怠惰な読み込みを無効にし、熱心な負荷を私が望むものを無効にします) – RPM1984