public TargetInstance(IDataInstance dataInstance, IDataImporter importer) { _targetInstance = dataInstance; _importer = importer; _targetInstance.Initialize(); }
public void Import(IDataInstance source, IDataInstance target, bool truncateTarget) { using (var connection = DbCommonHelper.CreateDbConnection( Constants.ProviderName.SQL_PROVIDER, source.ConnectionString)) { connection.Open(); foreach (var table in source.Tables) { if (!table.IsForImport) continue; var selectCommandText = ConstructSelectCommand(table); using (var reader = DbCommonHelper.CreateCommand( selectCommandText, connection).ExecuteReader()) { var targetTableName = table.MappingTableName; var targetConnectionString = target.ConnectionString; var mappings = ExtractColumnMappings(table); TruncateTable(targetTableName, targetConnectionString); ImportData(reader, mappings, targetConnectionString, targetTableName); } } } }
public void Import(IDataInstance source, IDataInstance target, bool truncateTarget) { throw new NotImplementedException(); }
// ?? use SourceInstance instead of IDataInstance public void ImportData(IDataInstance source, bool truncate) { _importer.Import(source, _targetInstance, truncate); }
public Target(IDataInstance dataInstance, IImporter importer) { _dataInstance = dataInstance; _importer = importer; }