[Consumes("application/json")] // application/xml public IActionResult Post([FromBody] Five model) { try { if (model.Note == null || model.Note.Length < 1) { ModelState.AddModelError("Note", "노트를 입력해야 합니다."); } // 모델 유효성 검사 if (!ModelState.IsValid) { return(BadRequest(ModelState)); // 400 에러 출력 } var m = _repository.Add(model); if (DateTime.Now.Second % 2 == 0) //[!] 둘 중 원하는 방식 사용 { //return CreatedAtAction("GetById", new { id = m.Id }, m); return(CreatedAtRoute("GetById", new { id = m.Id }, m)); // 201 } else { var uri = Url.Link("GetById", new { id = m.Id }); return(Created(uri, m)); // 201 Created } //return Ok(m); // 200 } catch (Exception) { return(BadRequest()); } }
[Consumes("application/json")] // application/xml public IActionResult Post([FromBody] Five model) // Deserialize, 생성 전용 DTO 클래스 사용 가능 { try { // 예외 처리 방법 if (model == null) { return(BadRequest()); // Status: 400 Bad Request } // 예외 처리 방법 if (model.Note == null || model.Note.Length < 1) { ModelState.AddModelError("Note", "노트를 입력해야 합니다."); } // 모델 유효성 검사 if (!ModelState.IsValid) { return(BadRequest(ModelState)); // 400 에러 출력 } // 데이터베이스에 저장 var m = _repository.Add(model); if (DateTime.Now.Second % 2 == 0) //[!] 둘 중 원하는 방식 사용 { // GetById 액션 이름 사용해서 입력된 데이터 반환 //return CreatedAtAction("GetById", new { id = m.Id }, m); return(CreatedAtRoute("GetFiveById", new { id = m.Id }, m)); // Status: 201 Created } else { var uri = Url.Link("GetFiveById", new { id = m.Id }); return(Created(uri, m)); // 201 Created } //return Ok(m); // 200 } catch (Exception) { return(BadRequest()); } }