如何在MVC操作返回错误状态时保持响应主体?
问题描述:
我想从我的MVC控制器返回BadRequest
状态和错误消息:如何在MVC操作返回错误状态时保持响应主体?
public class TestController : System.Web.Mvc.Controller
{
public ActionResult Bad()
{
Response.StatusCode = 400;
return new JsonResult()
{
Data = new { Message = "Request is bad!" },
JsonRequestBehavior = JsonRequestBehavior.AllowGet
};
}
}
它的工作原理,当我在IISExpress启动应用程序,该方法返回响应正文:
{"Message":"Request is bad!"}
但是当我部署相同站点到IIS(版本8.5)响应正文变为:
Bad Request
为什么会发生这种情况?当状态不是200时,是否有一些设置可以保留响应主体?