예제 #1
0
        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());
        }
예제 #2
0
        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());
        }