簡體   English   中英

獲取默認類型的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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM