/// <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);
            }
        }
Esempio n. 2
0
        /// <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();
        }