모두 귀하의 요구 사항에 따라 다릅니다.
HttpResponseMessage를 반환하면 사용자 지정 메시지와 함께 HttpStatusCode를 반환하는 옵션이 제공됩니다.
예를 들어, 애플리케이션에서 웹 API (예 : 새로운 고객)를 통해 무언가를 저장한다고 가정 해보십시오. 당신은 메시지와 함께 그 객체를 꽤 쉽게 반환 할 수 있고 반환 유형 (json 또는 xml)에 대해 전혀 걱정할 필요가 없습니다. 그리고 이것은 여러분의 3 번째 포인트에 대한 해답이 될 것입니다. 이것은 웹 API의 프론트 엔드에 비즈니스 객체를 보내는 더 좋은 방법입니다.
3 단계에 대한 답변으로 자세한 내용은이 블로그 게시물을 참조하십시오. http://blogs.msdn.com/b/yaohuang1/archive/2012/10/13/asp-net-web-api-help-page-part-2-providing-custom-samples-on-the-help-page.aspx
웹 API 동작에서 HttpResponseMessage를 반환하면 반환 코드는 다음과 유사합니다.
return Request.CreateResponse<Customer>(HttpStatusCode.Created, newlyCreatedCustomer);
두 번째 게시물은 웹 API에 대해서는 언급하지 않았습니다. 컨트롤러 액션에서 수행하려는 경우 json 데이터를 반환하는 방법을 보여줍니다.
나는 HttpResponseMessage를 돌려주는 것이 좋은 테스트를 허용하지 않는다는 의견을 보았 기 때문에 ... 나는 HttpResponseMessage 내부에서 꽤 많은 것을 반환 할 수 있다는 것에 동의한다 ..... 어떻게 생각하니? –
예, HttpResponseMessage를 반환하는 동작에 대한 테스트를 작성하는 것은 많은 구성을 예상하기 때문에 약간 까다 롭습니다. 이 블로그 게시물을 보시고, 그것에 대해 밝히십시오. http://www.peterprovost.org/blog/2012/06/16/unit-testing-asp-dot-net-web-api/ – Amila