对于我的项目,我必须通过实体框架记录对我的对象所做的所有更改。这仅包括注册在哪个时间在哪个表上编辑了哪些字段。
粗略地说,将更改放在具有这种结构的表中:IDEvent、EventDate、TableName、RowID、FieldName、OldValue、NewValue
如果有多个更改,将插入几行。
它已经适用于我 90% 的案例,我正在监听 ObjectContext 的 SavingChanges 事件
我唯一的问题:在添加的情况下,我由 SQL(IDENTITY) 生成的主键在 SavingChanges 事件中此时不存在(逻辑),因为它尚未存储在数据库中,问题是我真的需要它(在我的表中填写我的 RowID)
那么,你知道如何做到这一点吗?我没有找到任何“ChangesSaved”事件。解决方法的想法?