How can I tell if Request/Response is available in Application_Error?

Total Post:45

Points:315
C#  ASP.Net  Error 
 1824  View(s)
Ratings:
Rate this:

If Application_Error is triggered by an exception in the application. RouteConfigor BundleConfig.

how can you check if the Request/Response is available?

Response.Clear throws System.Web.HttpException with additional information Response is not available in this context.

void Application_Error(object sender, EventArgs e)
{
    //Log error
    Log.Error(e);
    //Clear
    Response.Clear();
    Server.ClearError();
    //Redirect
    Response.Redirect("~/Error");
}

 

  1. Post:13

    Points:95
    Re: How can I tell if Request/Response is available in Application_Error?

    You want to check whether it is HttpException.

    protected void Application_Error(Object sender, EventArgs e)
    {
        var exception =Server.GetLastError();
        // Log error
        LogException(exception);
        var httpException= exception as HttpException;
        if (httpException!= null)
        {
            Response.Clear();
            Server.ClearError();
            Response.TrySkipIisCustomErrors = true;
            Response.Redirect("~/Error");
        }
    }

      Modified On Apr-09-2018 11:43:51 PM

Answer

NEWSLETTER

Enter your email address here always to be updated. We promise not to spam!