2

EF4.3、POCO、遅延読み込み、およびIValidatableObjectインターフェイスを使用しています。

契約エンティティと1対1の関係にあるローンエンティティがあります。コントラクトには、必要な場合を除いてアンロードしたままにしておくのが最適な一連のデータが含まれています。

私の問題は...ローンエンティティに変更を加える場合、Validateメソッドは、関連する契約エンティティをロードして、ローンの状態(またはステータス)に応じてデータが有効であることを確認することを目的としています...しかし、契約はナビゲーションプロパティはnullのままですか?SaveChangesが呼び出される直前にローンをクイックウォッチすると、コントラクトデータが読み込まれ、SaveChangesは正常に続行されます。それ以外の場合は、失敗します。

誰かが私がこの振る舞いを見ている理由を説明することができれば、私は最も感謝するでしょう。

乾杯

クレイグ

4

1 に答える 1

2

遅延読み込みは、データベースへの予期しないクエリを回避するために、検証中に設計(内部EF実装)によってオフにされます。検証ロジックに関連エンティティが必要な場合は、コードでロードする必要があります。

于 2012-07-30T08:22:36.000 に答える