Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# global.asax应用程序\u原始页面上的错误报告_C#_Asp.net_Exception - Fatal编程技术网

C# global.asax应用程序\u原始页面上的错误报告

C# global.asax应用程序\u原始页面上的错误报告,c#,asp.net,exception,C#,Asp.net,Exception,我想我知道答案,但是是否可以让global.asax Application_Error事件修改原始页面上的文本框,而不将客户端移动到其他页面?比如: 异常exp=Server.GetLastError().GetBaseException(); System.Data.SqlClient.SqlException sqlex if (exp is System.Data.SqlClient.SqlException) { sqlex = (System.Data.SqlClient.Sql

我想我知道答案,但是是否可以让global.asax Application_Error事件修改原始页面上的文本框,而不将客户端移动到其他页面?比如: 异常exp=Server.GetLastError().GetBaseException(); System.Data.SqlClient.SqlException sqlex

if (exp is System.Data.SqlClient.SqlException) {
  sqlex = (System.Data.SqlClient.SqlException) exp;
  if (sqlex.Number == 50000) {
    if (HttpContext.Current.CurrentHandler is Page) {
      Page p = (Page) HttpContext.Current.CurrentHandler;
      Control c = p.FindControl("ErrorText");
      if (c != null && c is Label) {
        ((Label) c).Text = exp.Message;
        Server.ClearError();
        return;
      }
    }
  }
}

如果要执行此操作,则应使用页面本身的“OnError”事件。

right。。问题是,我希望对整个应用程序进行完全相同的错误处理。有没有一种方法可以将该代码用于所有我的页面错误?如果您的所有页面都有一个基类,您可以在那里处理它。web.config中还有一个pageBaseType属性,可以帮助您全局更改基类: