/// <summary> /// Požádá datovou vrstvu o úpravu existujícího záznamu zobrazené publikace podle zadaných vstupních dat. /// </summary> /// <param name="sender">původce události</param> /// <param name="e">data události</param> private void editPublicationButton_Click(object sender, RoutedEventArgs e) { // validace zadaných dat PublicationData publicationData = getValidPublicationData("Byly zadány neplatné nové údaje pro publikaci:"); // zrušení akce v případě neplatných dat if (publicationData == null) { return; } try { // požadavek obsluhy příslušného formuláře pro daný typ publikace na úpravu existujícího záznamu currentBibliographyForm.EditPublication(originalPublication.Id, publicationData.Publication, publicationData.Authors, publicationData.SpecificPublication); PerformedPublicationAction = PublicationAction.Update; } catch (DbEntityValidationException ex) { MessageBox.Show("Chyba při editaci záznamu publikace v databázi: " + ex.Message, "Chyba v databázi", MessageBoxButton.OK, MessageBoxImage.Error); } DialogResult = true; Close(); }
/// <summary> /// Požádá datovou vrstvu o vložení nového záznamu publikace se zadanými vstupními daty. /// </summary> /// <param name="sender">původce události</param> /// <param name="e">data události</param> private void insertPublicationButton_Click(object sender, RoutedEventArgs e) { // validace zadaných dat PublicationData publicationData = getValidPublicationData("Byly zadány neplatné údaje pro novou publikaci:"); // zrušení akce v případě neplatných dat if (publicationData == null) { return; } try { // požadavek obsluhy příslušného formuláře pro zvolený typ publikace na vložení nového záznamu currentBibliographyForm.InsertPublication( publicationData.Publication, publicationData.Authors, publicationData.SpecificPublication); PerformedPublicationAction = PublicationAction.Insert; } catch (DbEntityValidationException ex) { MessageBox.Show("Chyba při vkládání záznamu publikace do databáze: " + ex.Message, "Chyba v databázi", MessageBoxButton.OK, MessageBoxImage.Error); } DialogResult = true; Close(); }