private void WriteObjectsTable(SqlConnection connection) { var tableName = this.database.Mapping.TableNameForObjects; var columnNames = GetColumnNames(connection, tableName); var objectsTableReader = new ObjectsTableReader(this.objectTypeByObjectId, this.objectVersionByObjectId, columnNames); using (var sqlBulkCopy = new SqlBulkCopy(connection, SqlBulkCopyOptions.KeepIdentity, null)) { sqlBulkCopy.BulkCopyTimeout = 0; sqlBulkCopy.BatchSize = 5000; sqlBulkCopy.DestinationTableName = tableName; sqlBulkCopy.WriteToServer(objectsTableReader); } }
private void WriteObjectsTable(SqlConnection connection) { var mapping = this.database.Mapping; var tableName = mapping.TableNameForObjects; var command = new SqlCommand("SELECT * FROM " + tableName, connection); var dataTable = new DataTable(); dataTable.Load(command.ExecuteReader()); var objectsTableReader = new ObjectsTableReader(this.objectTypeByObjectId, this.objectVersionByObjectId, dataTable.Columns); using (var sqlBulkCopy = new SqlBulkCopy(connection, SqlBulkCopyOptions.KeepIdentity, null)) { sqlBulkCopy.BulkCopyTimeout = 0; sqlBulkCopy.BatchSize = 5000; sqlBulkCopy.DestinationTableName = tableName; sqlBulkCopy.WriteToServer(objectsTableReader); } }