public override void OnActionExecuting(ActionExecutingContext filterContext) { if (!PageEditing.PageIsInEditMode) { Log.Debug("Starting 404 handler action filter"); var request = filterContext.HttpContext.Request; filterContext.HttpContext.Response.TrySkipIisCustomErrors = true; int statusCode = NotFoundPageUtil.GetStatusCode(request); filterContext.HttpContext.Response.StatusCode = statusCode; filterContext.HttpContext.Response.Status = NotFoundPageUtil.GetStatus(statusCode); NotFoundPageUtil.SetCurrentLanguage(filterContext.HttpContext); filterContext.Controller.ViewBag.Referrer = NotFoundPageUtil.GetReferer(request); filterContext.Controller.ViewBag.NotFoundUrl = NotFoundPageUtil.GetUrlNotFound(request); filterContext.Controller.ViewBag.StatusCode = statusCode; } }
/// <summary> /// Load event for the page /// </summary> protected override void OnLoad(EventArgs e) { base.OnLoad(e); NotFoundPageUtil.HandleOnLoad(this.Page, UrlNotFound, this.Referer); }