public void Scan() { bool covers; bool subdirectories; var view = new ConfirmImportView(); if (view.ShowDialog() == true) { covers = view._viewModel.GenerateCovers; subdirectories = view._viewModel.SubDirectories; } else { return; } SelectedSourceDirectory.DateLastImported = DateTime.Now; SelectedSourceDirectory.EntityState = EntityState.Modified; _domain.UpdateSourceDirectory(SelectedSourceDirectory); ProgressReportingActive = true; _importer = new Importer(SelectedSourceDirectory); _importer.BookChanged += MainViewModel.i_BookChanged; _importer.Worker.RunWorkerCompleted += _worker_RunWorkerCompleted; _importer.ScanSource(subdirectories, covers); _importer.ProgressComplete += delegate { ProgressReportingActive = false; }; Refresh(); _library.CleanImages(); }