protected override ReleaseAudit GetChunkImpl(IDataLoadEventListener listener, GracefulCancellationToken cancellationToken) { DirectoryInfo sourceFolder = GetSourceFolder(); Debug.Assert(sourceFolder != null, "sourceFolder != null"); var dbOutputFolder = sourceFolder.CreateSubdirectory(ExtractionDirectory.MASTER_DATA_FOLDER_NAME); var releaseAudit = new ReleaseAudit() { SourceGlobalFolder = PrepareSourceGlobalFolder() }; if (_database != null) { _database.Detach(); var databaseName = _database.GetRuntimeName(); File.Copy(Path.Combine(_dataPathMap.FullName, databaseName + ".mdf"), Path.Combine(dbOutputFolder.FullName, databaseName + ".mdf")); File.Copy(Path.Combine(_dataPathMap.FullName, databaseName + "_log.ldf"), Path.Combine(dbOutputFolder.FullName, databaseName + "_log.ldf")); File.Delete(Path.Combine(_dataPathMap.FullName, databaseName + ".mdf")); File.Delete(Path.Combine(_dataPathMap.FullName, databaseName + "_log.ldf")); } return(releaseAudit); }