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