(抱歉我的英语不好)
嘿,我需要记录我的数据库上发生的所有更改,以便进行审计。当我插入或删除一个实体时,它很容易,但是当我更新某些内容时,我需要保存已更改的属性以及从/到哪些值。我的域服务是DbDomainService。我怎样才能得到改变?我是否需要点击数据库才能查看旧值并自行比较?
答案 0 :(得分:0)
有更优雅的方法可以做到这一点(例如使用Aspect编码技术),但我有一个孤立的案例,我这样做了。对于允许更新发生的每个实体,这是服务器端的WCF RIA服务的标准更新。
public void UpdatePackingSlip(PackingSlip currentPackingSlip)
{
var BeforeUpdate_PackingSlip = this.ChangeSet.GetOriginal(currentPackingSlip);
//at this point you can compare the original values from the updated values, and capture
// whatever you want todo
请确保不要更改将对象附加回的代码 对象上下文。