public void ErrorAsync(LogModel model) { Task.Run(() => { var entity = GetLogEntity(model); //_logRepository.Insert(entity); _context.AuditLog.Add(entity); _context.SaveChanges(); }); }
/// <summary> /// Rollback of entity changes and return full error message /// </summary> /// <param name="exception">Exception</param> /// <returns>Error message</returns> protected string GetFullErrorTextAndRollbackEntityChanges(DbUpdateException exception) { //rollback entity changes if (_context is DbContext dbContext) { var entries = dbContext.ChangeTracker.Entries() .Where(e => e.State == EntityState.Added || e.State == EntityState.Modified).ToList(); entries.ForEach(entry => entry.State = EntityState.Unchanged); } _context.SaveChanges(); return(exception.ToString()); }