获取DbContext.ChangeTracker.Entries的默认类型
本文关键字:默认 类型 Entries DbContext ChangeTracker 获取 | 更新日期: 2023-09-27 18:06:06
我正在尝试创建经历添加,编辑,删除的条目的日志。我还需要知道它们的基本类型,我提出了以下解决方案:
foreach (DbEntityEntry e in _context.ChangeTracker.Entries())
{
if (e.State == EntityState.Added)
{
_log.Write(_context.Database.Connection.Database, "ADD", typeof(<Type>).Name, null, (<Type>)e.Entity);
}
else if (e.State == EntityState.Modified)
{
_log.Write(_context.Database.Connection.Database, "EDIT", typeof(<Type>).Name, null, (<Type>)e.Entity);
}
else if (e.State == EntityState.Deleted)
{
_log.Write(_context.Database.Connection.Database, "DELETE", typeof(<Type>).Name, null, (<Type>)e.Entity);
}
}
_context.SaveChanges();
_log.Commit();
是否有办法获得"Entries"类型,因为它被存储为"object"。提前感谢!
应该可以:
Type entityType = ObjectContext.GetObjectType(e.Entity.GetType()).Name;