public void Application_Error555(Object sender, EventArgs e) { Exception exception = Server.GetLastError(); Server.ClearError(); var routeData = new RouteData(); routeData.Values.Add("controller", "ErrorPage"); routeData.Values.Add("action", "Error"); routeData.Values.Add("exception", exception); if (exception.GetType() == typeof(HttpException)) { routeData.Values.Add("statusCode", ((HttpException)exception).GetHttpCode()); } else { routeData.Values.Add("statusCode", 500); } Response.TrySkipIisCustomErrors = true; IController controller = new ErrorPageController(); controller.Execute(new RequestContext(new HttpContextWrapper(Context), routeData)); Response.End(); }
public void SetUp() { _controller = new ErrorPageController() { ControllerContext = MockedControllerContext.Setup() }; }
public void Application_Error(Object sender, EventArgs e) { Exception exception = Server.GetLastError(); string error = "IP - " + Request.UserHostAddress + "; " + "USER AGENT - " + Request.UserAgent + "; MESSAGE - " + exception; LogService.Current.Error(error); Server.ClearError(); var routeData = new RouteData(); routeData.Values.Add("controller", "ErrorPage"); routeData.Values.Add("action", "Error"); if (exception.GetType() == typeof(HttpException)) { routeData.Values.Add("statusCode", ((HttpException)exception).GetHttpCode()); } else { routeData.Values.Add("statusCode", 500); } Response.TrySkipIisCustomErrors = true; IController controller = new ErrorPageController(_appController); controller.Execute(new RequestContext(new HttpContextWrapper(Context), routeData)); Response.End(); }
public void ErrorPageView() { ErrorPageController ErrorPage = new ErrorPageController(); var results = ErrorPage.ErrorPage() as ViewResult; Assert.AreEqual("", results.ViewName); }
protected void Application_Error() { var exception = Server.GetLastError(); if (exception is HttpAntiForgeryException) { Response.Clear(); Server.ClearError(); Response.Redirect("/Admin/Error/Antiforgery", true); } var httpException = exception as HttpException; Response.Clear(); Server.ClearError(); var routeData = new RouteData(); routeData.Values["controller"] = "ErrorPage"; routeData.Values["action"] = "Unauthorized"; routeData.Values["exception"] = exception; Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError; Response.TrySkipIisCustomErrors = true; if (httpException != null) { Response.StatusCode = httpException.GetHttpCode(); switch (Response.StatusCode) { case (int)System.Net.HttpStatusCode.Unauthorized: routeData.Values["action"] = "Unauthorized"; break; case (int)System.Net.HttpStatusCode.NotFound: routeData.Values["action"] = "PageNotFound"; break; default: routeData.Values["action"] = "SomethingWrong"; break; } } // Avoid IIS7 getting in the middle Response.TrySkipIisCustomErrors = true; IController errorsController = new ErrorPageController(); HttpContextWrapper wrapper = new HttpContextWrapper(Context); var rc = new RequestContext(wrapper, routeData); errorsController.Execute(rc); }
protected void Application_Error45333(object sender, EventArgs e) { Exception ex = Server.GetLastError(); if (ex != null) { StringBuilder err = new StringBuilder(); err.Append("Error caught in Application_Error event\n"); err.Append("Error in: " + (Context.Session == null ? string.Empty : Request.Url.ToString())); err.Append("\nError Message:" + ex.Message); if (null != ex.InnerException) { err.Append("\nInner Error Message:" + ex.InnerException.Message); } err.Append("\n\nStack Trace:" + ex.StackTrace); Server.ClearError(); if (null != Context.Session) { err.Append($"Session: Identity name:[{Thread.CurrentPrincipal.Identity.Name}] IsAuthenticated:{Thread.CurrentPrincipal.Identity.IsAuthenticated}"); } //_log.Error(err.ToString()); if (null != Context.Session) { var routeData = new RouteData(); routeData.Values.Add("controller", "ErrorPage"); routeData.Values.Add("action", "Error"); routeData.Values.Add("exception", ex); if (ex.GetType() == typeof(HttpException)) { routeData.Values.Add("statusCode", ((HttpException)ex).GetHttpCode()); } else { routeData.Values.Add("statusCode", 500); } Response.TrySkipIisCustomErrors = true; IController controller = new ErrorPageController(); controller.Execute(new RequestContext(new HttpContextWrapper(Context), routeData)); Response.End(); } } }
protected void Application_Error(object sender, EventArgs e) { var httpContext = ((MvcApplication)sender).Context; var ex = Server.GetLastError(); var action = "Error"; if (ex is HttpException) { var httpEx = ex as HttpException; switch (httpEx.GetHttpCode()) { case 403: action = "Forbidden"; break; case 404: action = "NotFound"; break; case 500: action = "Expired"; break; // others if any } } // log the error using log4net. logger.Error(ex.Message, ex); httpContext.ClearError(); httpContext.Response.Clear(); httpContext.Response.StatusCode = ex is HttpException ? ((HttpException)ex).GetHttpCode() : 500; httpContext.Response.Headers.Add("Content-Type", "text/html"); httpContext.Response.TrySkipIisCustomErrors = true; var routeData = new RouteData(); routeData.Values["controller"] = "ErrorPage"; routeData.Values["action"] = action; var controller = new ErrorPageController(); ((IController)controller).Execute(new RequestContext(new HttpContextWrapper(httpContext), routeData)); }
/// <summary> /// CreatedBy : Nadeeka /// CreatedDate: 04/28/2016 /// /// Insert error details to log file /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Application_Error(object sender, EventArgs e) { Session.Clear(); // asanka 09062016 Exception exception = Server.GetLastError(); Response.Clear(); ErrorPageController errorController = new ErrorPageController(); // Log the exception in text file errorController.InsertRecordToLogFile(DateTime.Now.ToString("MM-dd-yyyy"), exception.StackTrace, exception.Message); Response.Write("Page Error\n"); Response.Write(exception.Message + "\n"); //Response.Write("Return to the <a href='/UserManagement/UserDetails'>" + "Dashboard</a>\n"); Response.Write(exception.StackTrace + "\n"); // Clear the error from the server //Server.ClearError(); comment by Asanka }
protected void Application_Error(object sender, EventArgs e) { var app = (MvcApplication)sender; var context = app.Context; var ex = app.Server.GetLastError(); context.Response.Clear(); context.ClearError(); var httpException = ex as HttpException; var routeData = new RouteData(); routeData.Values["controller"] = "ErrorPage"; routeData.Values["exception"] = ex; routeData.Values["action"] = "ErrorMessage"; if (httpException != null) { switch (httpException.GetHttpCode()) { case 404: routeData.Values["action"] = "http404"; break; case 500: routeData.Values["action"] = "http500"; break; case 200: routeData.Values["action"] = "ErrorMessage"; break; } } IController controller = new ErrorPageController(); controller.Execute(new RequestContext(new HttpContextWrapper(context), routeData)); }
void ErrorLog(Exception exception) { var httpContext = HttpContext.Current; var currentController = ""; var currentAction = "Index"; var currentRouteData = RouteTable.Routes.GetRouteData(new HttpContextWrapper(httpContext)); if (currentRouteData != null) { if (currentRouteData.Values["controller"] != null && !string.IsNullOrEmpty(currentRouteData.Values["controller"].ToString())) { currentController = currentRouteData.Values["controller"].ToString(); } if (currentRouteData.Values["action"] != null && !string.IsNullOrEmpty(currentRouteData.Values["action"].ToString())) { currentAction = currentRouteData.Values["action"].ToString(); } var controller = new ErrorPageController(); var routeData = new RouteData(); var action = "Index"; if (exception is HttpException) { var httpEx = exception as HttpException; switch (httpEx.GetHttpCode()) { case 400: action = "Error400"; break; case 401: action = "Error401"; break; case 500: action = "Error500"; break; case 403: action = "Error403"; break; case 404: action = "Error404"; break; default: action = "Index"; break; } } httpContext.ClearError(); httpContext.Response.Clear(); httpContext.Response.StatusCode = exception is HttpException ? ((HttpException)exception).GetHttpCode() : 500; httpContext.Response.TrySkipIisCustomErrors = true; routeData.Values["controller"] = "ErrorPage"; routeData.Values["action"] = action; if (exception != null) { BAL_ErrorLog.LogException(new LogError { UserName = "", ApplicationUrl = HttpContext.Current.Request.Url + Environment.NewLine, Message = exception.Message != null ? exception.Message.ToString(CultureInfo.InvariantCulture) : "", Source = exception.Source != null ? exception.Source.ToString(CultureInfo.InvariantCulture) : "", StackTrace = exception.StackTrace != null ? exception.StackTrace.ToString(CultureInfo.InvariantCulture) : "" }); controller.ViewData.Model = new HandleErrorInfo(exception ?? new Exception(), currentController, currentAction); } ((IController)controller).Execute(new RequestContext(new HttpContextWrapper(httpContext), routeData)); } }