public IHttpActionResult Post(ReqBodyContact reqBodyContact) { Contact contact = reqBodyContact.NewContact; IEnumerable <ContactEmail> contactEmails = reqBodyContact.NewContactEmails; IEnumerable <ContactNumber> contactNumbers = reqBodyContact.NewContactNumbers; IEnumerable <ContactTag> contactTags = reqBodyContact.NewContactTags; entities.Contact.Add(contact); entities.SaveChanges(); int contactId = contact.Id; foreach (ContactEmail ce in contactEmails) { ce.ContactId = contactId; entities.ContactEmail.Add(ce); } foreach (ContactNumber cn in contactNumbers) { cn.ContactId = contactId; entities.ContactNumber.Add(cn); } foreach (ContactTag ct in contactTags) { ct.ContactId = contactId; entities.ContactTag.Add(ct); } entities.SaveChanges(); return(Ok()); }
public IHttpActionResult UpdateContact(ReqBodyContact reqBodyContact) { int id = reqBodyContact.NewContact.Id; IEnumerable <ContactEmail> contactEmails = reqBodyContact.NewContactEmails; IEnumerable <ContactNumber> contactNumbers = reqBodyContact.NewContactNumbers; IEnumerable <ContactTag> contactTags = reqBodyContact.NewContactTags; entities.ContactEmail.RemoveRange(entities.ContactEmail.Where(ce => ce.ContactId == id)); entities.ContactNumber.RemoveRange(entities.ContactNumber.Where(cn => cn.ContactId == id)); entities.ContactTag.RemoveRange(entities.ContactTag.Where(ct => ct.ContactId == id)); entities.SaveChanges(); Contact contactUpdate = entities.Contact.FirstOrDefault(c => c.Id == id); contactUpdate.FirstName = reqBodyContact.NewContact.FirstName; contactUpdate.LastName = reqBodyContact.NewContact.LastName; contactUpdate.ContactAddress = reqBodyContact.NewContact.ContactAddress; contactUpdate.Gender = reqBodyContact.NewContact.Gender; contactUpdate.Bookmarked = reqBodyContact.NewContact.Bookmarked; foreach (ContactEmail ce in contactEmails) { entities.ContactEmail.Add(ce); } foreach (ContactNumber cn in contactNumbers) { entities.ContactNumber.Add(cn); } foreach (ContactTag ct in contactTags) { entities.ContactTag.Add(ct); } entities.SaveChanges(); return(Ok()); }