【发布时间】:2010-07-21 14:31:49
【问题描述】:
我正在尝试使用实体上下文中的 SavingChanges 事件在实体框架 4.0 中实现一些通用日志记录。
我想记录有关任何创建/更新和删除记录的详细信息,包括正在更改的记录的 id(它始终是一个 int 身份字段)。在更新和删除过程中,我可以使用
获取记录的 id Dim AddedItems = Statemanager.GetObjectStateEntries(EntityState.Added)
For Each entry As ObjectStateEntry In DirectCast(sender, ObjectContext).ObjectStateManager.GetObjectStateEntries(EntityState.Added)
NewLogItem.RecordId = CInt(entry.EntityKey.EntityKeyValues(0).Value.ToString())
Next
但我显然无法在插入过程中获取即将插入记录的 id,因为它尚未写入数据库,有没有简单的方法解决这个问题?
【问题讨论】:
标签: asp.net vb.net entity-framework entity-framework-4