private async Task InsertData <T>(string destination, IEnumerable <T> data, TextWriter statusWriter, int pageCount) where T : Entity { try { statusWriter.WriteLine($"Inserting {destination} data for page {pageCount}"); await _dataStorageService.Insert(destination, data); } catch (Exception ex) { var identitifiers = string.Join(",", data?.Select(d => d.Id)); var exception = new Exception("Error when inserting data", ex); exception.Data.Add("destination", destination); exception.Data.Add("identitifiers", identitifiers); throw exception; } }