1

EF 5.0 を使用して、切り離されたシナリオ (短命のコンテキスト) で変更/追加/削除されたエンティティの ICollection を含むオブジェクト グラフを更新しようとしていますか?

私はこのようなものを持っています:

Visit (Edited)    
    FinancialInfo (Unchanged)
          Discount1 (Added)
          Discount2 (Modified)
          Discount3 (Deleted)

訪問を更新しようとすると、OptimisticConcurrency 例外がスローされます。

「ストア更新、挿入、または削除ステートメントが予期しない行数 (0) に影響しました。エンティティが読み込まれてから、エンティティが変更または削除された可能性があります。ObjectStateManager エントリを更新してください。」

実際に問題の原因はわかっていますが、リポジトリ パターンを使用しているため、DbContext を直接使用していません。

問題を処理する Visit エンティティのカスタム更新ロジックを作成できますが、一般的なオプションを探しています。

これは、おそらくハッスルフリーのアプローチはないと思いますが、とにかく...

アドバイスをいただければ幸いです。

ありがとうございました

4

1 に答える 1

0

それが私がこの時点でこれを行った方法です:

ベース リポジトリ クラスの Update メソッドをオーバーライドし、更新ツリー内のオブジェクトの処理に関するカスタム ロジックを記述しました。私はこの例に従いました

この解決策は好きではありませんが、近い将来、EF がより柔軟になることを願っています。ご清聴ありがとうございました。

于 2013-06-04T11:03:05.657 に答える