返回空ActionResult

Max*_*lov 23 asp.net-mvc bad-request actionresult

当我需要返回错误的请求结果时,我可能会遇到情况.

例如,调用MVC 3站点的控制器操作,但请求uri中缺少必需的参数.

我回复了什么?我知道我可以这样做:

Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Content(string.Empty);
Run Code Online (Sandbox Code Playgroud)

这是上述情况的正确方法吗?

Ser*_*sev 35

您的解决方案可以正常工作,但更明确的方法是使用HttpStatusCodeResult类,如下所示:

return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
Run Code Online (Sandbox Code Playgroud)

  • 此解决方案不等同于作者的代码.默认情况下,HttpStatusCodeResult会导致IIS返回带有错误描述的默认HTML错误页面,但不会返回空内容. (11认同)
  • 无需将状态代码强制转换为int.只需返回新的HttpStatusCodeResult(HttpStatusCode.BadRequest); (4认同)