[英]EntityFramework 5 - InvalidOperationException when accessing DbContext.ChangeTracker.Entries
[英]Get the default type of DbContext.ChangeTracker.Entries
我正在嘗試對經過添加,編輯,刪除的條目創建日志。 我還需要知道它們的基本類型,然后提出以下解決方案:
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();
有沒有一種方法可以獲取“條目”類型,因為它存儲為“對象”。 先感謝您!
這應該工作:
Type entityType = ObjectContext.GetObjectType(e.Entity.GetType()).Name;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.