protected override async Task ExecuteAsync(object parameter) { Folder folder = (Folder)parameter; string path = _dialogService.FileBrowserDialog(); if (string.IsNullOrEmpty(path)) { return; } Meme meme = new Meme() { Title = Path.GetFileNameWithoutExtension(path), ImagePath = path, Folder = folder }; await _dataStorage.AddMeme(meme, folder); }
protected override async Task ExecuteAsync(object parameter) { Folder folder = (Folder)parameter; DialogMemeVM dialogMemeVM = new DialogMemeVM(new Meme(), folder, _serviceCollectionClass, "Создание мема"); Meme meme = (Meme)await MaterialDesignThemes.Wpf.DialogHost.Show(dialogMemeVM, _dialogId); dialogMemeVM.Dispose(); dialogMemeVM = null; GC.Collect(); GC.WaitForPendingFinalizers(); if (meme == null || string.IsNullOrEmpty(meme.ImagePath)) { return; } meme.Folder = folder; await _dataStorage.AddMeme(meme, folder); }