1

オブジェクトに変更が保存されていない場合、オブジェクトの表示を変更したいと考えています。そのまま使えると思っChangeTracker.Stateていたのですが、Navigation Property を変更しても Modified に変わりません。

たとえば、連絡先オブジェクトには、電話、住所、および電子メールのナビゲーション プロパティが含まれています。連絡先の名前を変更すると、状態は Modified に変わりますが、電話番号を変更すると、オブジェクトの状態は Unchanged のままになります。

4

2 に答える 2

1

単一のエンティティに関連付けられた状態は、オブジェクト グラフの状態を反映しません。どのように機能すると思いますか? すべてが何らかの形で互いに関連しているため、グラフ内の何かが変更されると、すべてのエンティティが変更済みに設定されます。

ObjectStateChanging変更トラッカーのイベントをサブスクライブして、グラフの変更について通知を受けることができます。

于 2011-06-06T17:22:18.563 に答える
0

Everything is in the ChangeTracker.

You need to look at:

  • State
  • ObjectsAddedToCollection
  • ObjectsRemovedFromCollection
  • OriginalValues

You might also want to look at ExtendedProperties if you're generating your model without Foreign Key IDs and you have no repopulation policy in practice when you deserialize the STE.

于 2011-06-06T16:57:30.250 に答える