Tag: audit logging

如何从Entity Framework 6中的Auditlog实体获取id

我知道那里有几个类似的post,但我找不到任何解决这个问题的方法。 我想在Entity Framework 6中添加,更改或删除实体(软删除)时添加(某种)AudioLog。我已经覆盖了SaveChanges,因为我只想为EntityStates添加,修改或删除的日志条目,我在第一次调用SaveChanges之前获取列表。 问题是,因为我需要记录已执行的操作,我需要检查实体的EntityState。 但是在调用SaveChanges之后,所有条目的EntityState都是Unchanged。 public override int SaveChanges() { using (var scope = new TransactionScope()) { var modifiedEntries = ChangeTracker.Entries() .Where(e => e.State == EntityState.Added || e.State == EntityState.Deleted || e.State == EntityState.Modified) .ToList(); int changes = base.SaveChanges(); foreach (var entry in modifiedEntries) { ApplyAuditLog(entry); } base.SaveChanges(); scope.Complete(); return changes; } } private […]