0

オブジェクトで変更されたフィールドを確認する方法はありますか?

問題の例:日付フィールドが変更され、変更がカスタムで保存されている場合、関連するオブジェクトにカスタムロジックを適用する必要があります。

私は以前にそれをやろうとしていますcontext.SaveChanges();ObjectStateManager、必要なすべての情報を私に与えてくれません。

4

1 に答える 1

1

なぜそれを使うObjectStateManagerのですか?getterとsetterを持つエンティティがあるので、そのロジックトリガーをsetterに配置するだけです。エンティティに実装INotifyPropertyChangedして、必要なプロパティがエンティティの外部で変更されたときにイベントを処理することもできます。

それ以外の場合は、エンティティにObjectStateManagergetObjectStateEntryを使用して、エンティティとを比較する必要がCurrentValuesありますOriginalValues。しかし、これはほとんど間違ったアプローチです。ロジックは、エンティティ内のコードによってトリガーされる必要があります。

于 2011-08-30T09:09:55.947 に答える