MVC4 WebAPI原因短语?

Ros*_*oss 8 asp.net-mvc wcf-web-api

根据MSDN 上的HttpResponseMessage 文档,原因短语(如200 OK的"OK"部分)应该是可设置的.HTTP响应让我设置原因短语:

HttpResponseMessage response = new HttpResponseMessage(System.Net.HttpStatusCode.Conflict);
            response.ReasonPhrase = "conflict message";
Run Code Online (Sandbox Code Playgroud)

但是,当我在客户端使用响应作为WebResponse时,我没有看到我的自定义原因短语.我希望在StatusDescription下找到它.使用Fiddler查看原始响应,似乎没有在服务器上设置原因短语.

一位乐于助人的同事指出,通过行动结果(和派生),我可以做一些类似于:

new HttpStatusCodeResult(System.Net.HttpStatusCode.Conflict, "conflict message");

似乎这就是我所追求的精确功能,但我不确定如何说服WebAPI合作.

我哪里错了?

Reb*_*cca 8

ReasonPhrase在Cassini中不起作用.使用IIS Express而不是Cassini,您会发现响应包含原因.