public void InsertManyItems() { IEnumerable <Item> data = GetData(); using (var reader = new EnumerableDataReader <Item>(data, new string[] { "Id", "Name" })) { using (var bulkInsert = new SqlServerBulkInsert("connection string")) { bulkInsert.Insert(reader); } } }
public void ThrowInvalidOperationExceptionWhenColumnDoesNotExistInDestinationTable() { using (IBulkActionDataReader reader = CreateDataSourceWithNonExistingColumn()) { using (SqlServerBulkInsert bulkInsert = new SqlServerBulkInsert(ServerHelper.Connection)) { bulkInsert.DestinationTableName = TableName_IgnoreCaseInColumnNames; Action action = () => bulkInsert.Insert(reader); action.ShouldThrow <InvalidOperationException>() .WithMessage($"*{TableName_IgnoreCaseInColumnNames}*{nameof(NonExistingColumnDataItem.NonExistingColumn)}*"); } } }
public void BulkInsertDataFromDataTable() { DataTable expectedData = CreateDataTableDataSource(); DataTable actualData = null; using (SqlServerBulkInsert bulkInsert = new SqlServerBulkInsert(ServerHelper.Connection)) { bulkInsert.DestinationTableName = TableName; bulkInsert.Insert(expectedData); } actualData = LoadData(ServerHelper.Connection, TableName); SqlServerBulkHelper.CompareTables(actualData, expectedData); }
public void BulkInsertDataFromIDataReaderIgnoreCaseInColumnNames() { DataTable expectedData = CreateDataTableDataSource(false); DataTable actualData = null; using (IBulkActionDataReader reader = CreateIDataReaderDataSource(false)) { using (SqlServerBulkInsert bulkInsert = new SqlServerBulkInsert(ServerHelper.Connection)) { bulkInsert.DestinationTableName = TableName_IgnoreCaseInColumnNames; bulkInsert.Insert(reader); } actualData = LoadData(ServerHelper.Connection, TableName_IgnoreCaseInColumnNames); } SqlServerBulkHelper.CompareTables(actualData, expectedData); }
public void BulkInsertDataFromIDataReaderShortText() { DataTable expectedData = CreateDataTableShortText(); DataTable actualData = null; using (IBulkActionDataReader reader = CreateIDataReaderShortText()) { using (SqlServerBulkInsert bulkInsert = new SqlServerBulkInsert(ServerHelper.Connection)) { bulkInsert.DestinationTableName = TableName_PrimitiveDataTypes; bulkInsert.Insert(reader); } actualData = LoadData(ServerHelper.Connection, TableName_PrimitiveDataTypes); } SqlServerBulkHelper.CompareTables(actualData, expectedData); }
private void BulkInsertDataFromIBulkActionDataReaderCore() { DataTable expectedData = CreateDataTableDataSource(); DataTable actualData = null; using (IBulkActionDataReader reader = CreateIDataReaderDataSource(true)) { using (SqlServerBulkInsert bulkInsert = new SqlServerBulkInsert(ServerHelper.Connection)) { bulkInsert.DestinationTableName = TableName; bulkInsert.Insert(reader); } actualData = LoadData(ServerHelper.Connection, TableName); } SqlServerBulkHelper.CompareTables(actualData, expectedData); }
public void BulkInsertDataFromIDataReaderSynchronouslyWithoutDeadLock() { AsyncContext.Run(() => { DataTable expectedData = CreateDataTableDataSource(); DataTable actualData = null; using (IDataReader reader = expectedData.CreateDataReader()) { using (SqlServerBulkInsert bulkInsert = new SqlServerBulkInsert(ServerHelper.Connection)) { bulkInsert.DestinationTableName = TableName; bulkInsert.Insert(reader); } actualData = LoadData(ServerHelper.Connection, TableName); } SqlServerBulkHelper.CompareTables(actualData, expectedData); }); }