.AsNoTracking as you literally track if it exists after
FirstOrDefaultAsync from the loop
/close .AsNoTrackingFirstOrDefaultAsync_mainDbContext.WorkItems.Attach(existingWorkItem);
_mainDbContext.Entry(existingWorkItem).State = EntityState.Modified;