MVC4 WebAPI原因短语?

时间:2012-03-20 20:44:37

标签: asp.net-mvc wcf-web-api

根据MSDN上的HttpResponseMessage documentation,原因短语(如200 OK的“OK”部分)应该是可设置的。 HTTP响应让我设置原因短语:

HttpResponseMessage response = new HttpResponseMessage(System.Net.HttpStatusCode.Conflict);
            response.ReasonPhrase = "conflict message";

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

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

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

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

我哪里错了?

1 个答案:

答案 0 :(得分:8)

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