我需要一种方法来跟踪修改后的属性并对其进行审核。 我正在连接到SaveChanges,在那里我获得了修改后的属性
//Get only Modified Customer entries
var modifiedCustomerOses = context.ObjectStateManager
.GetObjectStateEntries<Customer>(EntityState.Modified)
.ToList();
我注意到的是我正在使用带有codeGeneration的EF4,它会在未真正修改属性时报告。 如果属性EG“CustomerName”设置为“John”,当我进行更新时,我不会更改名称,但我这样做 EntityCustomer.Name = customerDto.Name和名称完全相同,它仍然报告为已更改。
我查看了生成的代码,无法查看EF属性是否像
那样进行检查if(name == value)// propertyNotchanged dont raiseevent。
有什么建议吗?你知道EF4如何确定一个属性是否真的发生了变化?
感谢
答案 0 :(得分:1)
跟踪是在实体级别执行,而不是在属性级别执行 如果更改属性,更合适的方法是使用OnPropertyChanged partial method 只需创建一个包含已更改属性的自定义代码。