Пример #1
0
        public async Task <ContactPutDTO> PutContact(int id, ContactPutDTO contactPutDTO)
        {
            if (contactPutDTO == null)
            {
                throw new ArgumentNullException(nameof(contactPutDTO));
            }

            try
            {
                Contact contact = await _context.Contacts
                                  .Include(c => c.Address)
                                  .FirstOrDefaultAsync(c => c.Id == id)
                                  .ConfigureAwait(false);

                contact.FirstName = contactPutDTO.FirstName;
                contact.LastName  = contactPutDTO.LastName;
                contact.Type      = contactPutDTO.Type;

                await _context.SaveChangesAsync().ConfigureAwait(false);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ContactExists(id))
                {
                    return(null);
                }
                else
                {
                    throw;
                }
            }

            return(contactPutDTO);
        }
Пример #2
0
        public async Task <IActionResult> PutContact(int id, ContactPutDTO ContactPutDTO)
        {
            if (ContactPutDTO == null)
            {
                throw new ArgumentNullException(nameof(ContactPutDTO));
            }

            if (id != ContactPutDTO.Id)
            {
                return(BadRequest());
            }

            var ContactResult = await _contactRepository.PutContact(id, ContactPutDTO).ConfigureAwait(false);

            if (ContactResult == null)
            {
                return(NotFound());
            }

            return(NoContent());
        }