/// <summary> /// Odstraní vybraný soubor v seznamu příloh zobrazené publikace z datového adresáře aplikace /// a následně ho odebere z tohoto seznamu. /// </summary> /// <param name="sender">původce události</param> /// <param name="e">data události</param> private void removeAttachmentButton_Click(object sender, RoutedEventArgs e) { if (attachmentDataGrid.SelectedItem == null) { return; } Attachment attachment = attachmentDataGrid.SelectedItem as Attachment; if (MessageBox.Show("Opravdu chcete odstranit vybranou přílohu?", "Odstranění přílohy", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.No) { return; } try { // odebrání přílohy a obnova seznamu příloh publikace attachmentModel.RemoveAttachmentFromPublication(originalPublication, attachment.Id); refreshAttachments(); statusLabel.Content = "Soubor odstraněn: " + attachment.Path; } catch (DbEntityValidationException ex) { MessageBox.Show("Chyba při odstraňování záznamu přílohy z databáze: " + ex.Message, "Chyba v databázi", MessageBoxButton.OK, MessageBoxImage.Error); } catch (IOException ex) { MessageBox.Show("Chyba při odstraňování připojeného souboru: " + ex.Message, "Chyba při zápisu", MessageBoxButton.OK, MessageBoxImage.Error); } }
/// <summary> /// Načte od uživatele ID přílohy a požádá o její odebrání ze seznamu. /// </summary> public void DeleteAttachment() { WriteLine("Zadejte ID přílohy k odstranění:"); int id = ReadValidNumber("Zadejte celé číslo představující ID přílohy aktuální publikace."); if (ReadYesNoAnswer("Opravdu chcete přílohu odstranit?")) { attachmentModel.RemoveAttachmentFromPublication( publicationModel.GetPublicationById(publicationId), id); } GetAttachmentList(); }