private static void ExecuteMethod(object parameter) { if (!(parameter is MainViewModel)) { throw new ArgumentException("Parameter must be the correct view model type.", nameof(parameter)); } var source = GetFolderPath("Select source folder"); if (string.IsNullOrWhiteSpace(source)) { return; } var destination = GetFolderPath("Select destination folder"); if (string.IsNullOrWhiteSpace(destination)) { return; } var settings = new Settings { DestinationFolder = destination, SourceFolder = source }; var library = PhotoLibraryConverter.Convert(settings); using var context = PhotoSyncContextFactory.Make(library.DestinationFullPath, true); context.Settings.Add(settings); context.SaveChanges(); (parameter as MainViewModel).SetLibrary(library); }
private static void ExecuteMethod(object parameter) { if (!(parameter is MainViewModel)) { throw new ArgumentException("Parameter must be the correct view model type.", nameof(parameter)); } var dialog = new OpenFileDialog { Title = "Open Library", Filter = "db files (*.db)|*.db|All Files (*.*)|*.*", InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures), Multiselect = false }; var result = dialog.ShowDialog(); if (result == DialogResult.OK) { var path = dialog.FileName; if (!string.IsNullOrEmpty(path) && File.Exists(path)) { using var context = PhotoSyncContextFactory.Make(path); var settings = context.Settings.Single(); var library = PhotoLibraryConverter.Convert(settings); library.FileName = Path.GetFileName(path); (parameter as MainViewModel).SetLibrary(library); } } }