如果对象有未保存的更改,我想更改对象的显示。我想我可以只使用ChangeTracker.State
,但如果我更改导航属性,它不会更改为Modified。
例如,Contact对象包含电话、地址和电子邮件的导航属性。如果我更改联系人的姓名,状态将更改为"已修改",但更改电话会使对象的状态保持不变。
与单个实体关联的状态不反映对象图的状态。你认为它应该如何工作?一旦图形中的任何内容发生变化,就会将所有实体设置为修改,因为所有内容都以某种方式相互关联。
您可以订阅更改跟踪器的ObjectStateChanging
事件,并收到有关图形更改的通知。
一切都在ChangeTracker中。
您需要查看:
- 州
- 对象添加到集合
- 对象从集合中删除
- 原始值
如果您生成的模型没有外键ID,并且在反序列化STE时实际上没有重新填充策略,那么您可能还需要查看ExtendedProperties。