public ActionResult <Pessoa> Put(Pessoa request)
        {
            var fonesExcluidos = _context.Fone
                                 .Where(x =>
                                        x.PessoaId == request.Id &&
                                        !request.Fones.Where(y => y.Id.HasValue).Select(y => y.Id).Contains(x.Id)
                                        );

            foreach (var item in fonesExcluidos)
            {
                _context.Remove(item);
            }
            foreach (var item in request.Fones)
            {
                if (item.Id.HasValue)
                {
                    _context.Fone.Update(item);
                }
                else
                {
                    item.PessoaId = request.Id;
                    _context.Fone.Add(item);
                }
            }
            request.Fones = null;
            //
            var emailsExcluidos = _context.Email
                                  .Where(x =>
                                         x.PessoaId == request.Id &&
                                         !request.Emails.Where(y => y.Id.HasValue).Select(y => y.Id).Contains(x.Id)
                                         );

            foreach (var item in emailsExcluidos)
            {
                _context.Remove(item);
            }
            foreach (var item in request.Emails)
            {
                if (item.Id.HasValue)
                {
                    _context.Email.Update(item);
                }
                else
                {
                    item.PessoaId = request.Id;
                    _context.Email.Add(item);
                }
            }
            request.Emails = null;
            _context.Pessoa.Update(request);
            _context.SaveChanges();
            return(request);
        }
 public void Delete(int id)
 {
     _context.Remove(new Cidade {
         Id = id
     });
     _context.SaveChanges();
 }