追踪未处理的asp.net异常

时间:2015-05-08 21:38:52

标签: c# asp.net

我们有一个asp.net Web应用程序,对于我们的一个用户,当他们点击按钮时会在特定页面上抛出异常。我无法重新创建此问题,但系统在客户端获取异常时记录异常。问题是,我不知道异常的生成位置。当我们记录异常时,我们在异常上调用ToString()方法来获取堆栈跟踪。这是一个解析错误,但我不知道它来自哪里。这是我们登录时的例外情况:

  

System.FormatException:输入字符串的格式不正确   在System.Number.StringToNumber(String str,NumberStyles选项,   NumberBuffer&安培; number,NumberFormatInfo info,Boolean parseDecimal)
  在System.Number.ParseInt32(String s,NumberStyles样式,   NumberFormatInfo信息)at   System.ComponentModel.Int32Converter.FromString(String value,   NumberFormatInfo formatInfo)at   System.ComponentModel.BaseNumberConverter.ConvertFrom(ITypeDescriptorContext   上下文,CultureInfo文化,对象价值)

我认为这是由Global.asax

中的以下代码记录的
void Application_Error(object sender, EventArgs e) 
    {
        // Code that runs when an unhandled error occurs
        if (Server.GetLastError() != null)
        {
            Exception objErr = Server.GetLastError().GetBaseException();
            objErr.WriteExceptionLog();
        }
    }

但是,我不知道调用此代码的位置或如何查找。在我记录异常时,有关于我可以查看的位置或是否需要执行其他操作的任何想法?

1 个答案:

答案 0 :(得分:0)

你走了:

void Application_Error(object sender, EventArgs e) 
{
    // Code that runs when an unhandled error occurs
    if (Server.GetLastError() != null)
    {
        Exception err = Server.GetLastError().InnerException;

        // handle error here

        Server.ClearError();
    }
}