public ActionResult Cadastrar([FromBody]Mensagem mensagem, [FromHeader(Name = "Accept")]string mediaType) { if (ModelState.IsValid) { try { _mensagemRepository.Cadastrar(mensagem); if (mediaType == CustomMediaTypes.Hateoas) { var mensageDB = _mapper.Map<Mensagem, MensagemDTO>(mensagem); mensageDB.Links.Add(new LinkDTO("self", Url.Link("MensagemCadastrar", null), "POST")); mensageDB.Links.Add(new LinkDTO("atualizacaoParcial", Url.Link("MensagemAtualizacaoParcial", new { id = mensagem.Id }), "PATCH")); return Ok(mensageDB); } else { return Ok(mensagem); } } catch(Exception e) { return UnprocessableEntity(e); } } else { return UnprocessableEntity(ModelState); } }
public ActionResult Cadastrar([FromBody] Mensagem mensagem) { if (ModelState.IsValid) { try { _mensagemRepository.Cadastrar(mensagem); return(Ok(mensagem)); } catch (Exception e) { return(UnprocessableEntity(e)); } } else { return(UnprocessableEntity(ModelState)); } }
public ActionResult Cadastrar([FromBody] Mensagem mensagem) { if (ModelState.IsValid) { try { _mensagemRepository.Cadastrar(mensagem); var mensagemDTO = _mapper.Map <Mensagem, MensagemDTO>(mensagem); mensagemDTO.Links.Add(new LinkDTO("_self", Url.Link("Cadastrar", null), "POST")); mensagemDTO.Links.Add(new LinkDTO("_atualizacaoParcial", Url.Link("AtualizacaoParcial", new { id = mensagem.Id }), "PATCH")); return(Ok(mensagemDTO)); } catch (Exception e) { return(UnprocessableEntity(e)); } } else { return(UnprocessableEntity(ModelState)); } }