【发布时间】:2017-03-15 02:57:30
【问题描述】:
我们正在使用https://github.com/bilal-fazlani/tracker-enabled-dbcontext
创建更改的审计跟踪。我们还想将插入记录到新记录的跟踪中。我们可以遍历刚刚添加的实体,但似乎无法获取刚刚添加的实体的 ID?
一年前有一篇文章暗示这是一个限制/不可能 - https://www.exceptionnotfound.net/entity-change-tracking-using-dbcontext-in-entity-framework-6/
但也有一些 cmets 建议有办法。我们研究了这些和相关的代码,但没有更清楚,真的可以用这个框架正确审计插入吗?
foreach (var entryAdded in addedEntities)
{
var entityKeyObject = objectContext.ObjectStateManager.GetObjectStateEntry(entryAdded.Entity).EntityKey;
var entityKey = entityKeyObject.EntityKeyValues.Length >= 1 ? entityKeyObject.EntityKeyValues[0].Value : 0;
// insert into audit log here..
}
【问题讨论】:
标签: entity-framework audit-trail