我想从Initialize方法返回BadRequest状态代码。我明白了,我怎么能从任何Action(返回新的HttpStatusCodeResult(HttpStatusCode.BadRequest))中做到这一点,但是如何从Initialize中做到这一点?我尝试以下方法:
requestContext.HttpContext.Response.StatusCode = (int)HttpStatusCode.BadRequest;
但我得到
异常详细信息:System.NullReferenceException:不是对象引用 设置为对象的实例。
如果我不打电话
base.Initialize(requestContext);
答案 0 :(得分:0)
根据设计,您应该覆盖Initialize方法并在基本方法上调用它,以便控制器获取http上下文。
https://msdn.microsoft.com/en-us/library/system.web.mvc.controller.initialize(v=vs.118).aspx
答案 1 :(得分:0)
您可以使用HttpContext.Current;
HttpContext.Current.Response.StatusCode = (int)HttpStatusCode.BadRequest; HttpContext.Current.Response.End(); return;