public ActionResult Post([FromBody] AmigoRequest amigoRequest) { var erros = amigoRequest.Erros(); if (erros.Any()) { return(UnprocessableEntity(erros)); //422 } var response = CriarAmigo(amigoRequest); return(CreatedAtAction(nameof(Get), new { response.Id }, response)); //201 }
private AmigoResponse CriarAmigo(AmigoRequest amigoRequest) { amigoRequest.Pais = _context.Pais.FirstOrDefault(x => x.Id == amigoRequest.Pais.Id); amigoRequest.Estado = _context.Estado.FirstOrDefault(x => x.Id == amigoRequest.Estado.Id); var amigo = _mapper.Map <Amigo>(amigoRequest); amigo.Id = Guid.NewGuid(); _context.Amigos.Add(amigo); _context.SaveChanges(); return(_mapper.Map <AmigoResponse>(amigo)); }
private void AlterarAmigo(Guid id, AmigoRequest request) { var amigo = _context.Amigos.Find(id); var estado = amigo.Estado; var pais = amigo.Pais; amigo = _mapper.Map(request, amigo); amigo.Estado = estado; amigo.Pais = pais; _context.Amigos.Update(amigo); _context.SaveChanges(); }
public ActionResult Put([FromRoute] Guid id, [FromBody] AmigoRequest request) { //procura pelo Id, se não achar NoFound var response = BuscarAmigoPorId(id); if (Response == null) { return(NotFound()); //404 } //se achar realiza o método abaixo AlterarAmigo(id, request); //Faz a alteração e não retorna nada para esta requisição return(Ok(response)); //204 }