private void CreateUpdate_Button_Click(object sender, RoutedEventArgs e) { SelectedContact.Name = NameTextBox.Text; SelectedContact.Surname = SurnameTextBox.Text; SelectedContact.PhoneNumber = PhoneNumberTextBox.Text; SelectedContact.Sex = (SexEnum)SexComboBox.SelectedIndex + 1; if (SelectedContact.Id == 0) { var addedContact = contactsDAL.InsertContact(SelectedContact); MainTable.ItemsSource = MainTable.ItemsSource.Cast <Contact>().Concat(new List <Contact> { addedContact }); } else { var updatedElement = contactsDAL.UpdateContact(SelectedContact); var actualMainTableItemsSource = MainTable.ItemsSource.Cast <Contact>().ToList(); var elementInTable = actualMainTableItemsSource.FirstOrDefault(x => x.Id == updatedElement.Id); actualMainTableItemsSource.Remove(elementInTable); actualMainTableItemsSource.Add(updatedElement); MainTable.ItemsSource = actualMainTableItemsSource; } ClearContactData(); }
public ActionResult <Contact> AddContact([FromBody] Contact contact) { var contactsDAL = new ContactDAL(); var result = contactsDAL.InsertContact(contact); return(Ok(result)); }
/// <summary> /// Spara en kontaktuppgift i databasen. /// </summary> /// <param name="customer">KOntaktuppgifter som ska sparas.</param> public void SaveContact(Contact contact) { // Uppfyller inte objektet affärsreglerna... ICollection <ValidationResult> validationResults; if (!contact.Validate(out validationResults)) // Använder "extension method" för valideringen! { // Klassen finns under App_Infrastructure. // ...kastas ett undantag med ett allmänt felmeddelande samt en referens // till samlingen med resultat av valideringen. var ex = new ValidationException("Objektet klarade inte valideringen."); ex.Data.Add("ValidationResults", validationResults); throw ex; } // Contact-objektet sparas antingen genom att en ny post // skapas eller genom att en befintlig post uppdateras. if (contact.ContactId == 0) // Ny post om ContactId är 0! { ContactDAL.InsertContact(contact); } else { ContactDAL.UpdateContact(contact); } }