如果您想在一个地方处理所有错误,您可以使用 web 应用程序的 global.asax 文件(也称为全局应用程序文件),并处理应用程序错误事件。首先你将全局应用程序文件添加到你的项目中,然后在 Application_Error 事件中放置一些错误处理代码,如下所示:
void Application_Error(object sender, EventArgs e)
{
Exception objErr = Server.GetLastError().GetBaseException();
string err = "Error Caught in Application_Error event\n" +
"Error in: " + Request.Url.ToString() +
"\nError Message:" + objErr.Message.ToString() +
"\nStack Trace:" + objErr.StackTrace.ToString();
System.Diagnostics.EventLog.WriteEntry("Sample_WebApp", err, System.Diagnostics.EventLogEntryType.Error);
Server.ClearError();
Response.Redirect(string.Format("{0}?exceptionMessage={1}", System.Web.VirtualPathUtility.ToAbsolute("~/ErrorPage.aspx"), objErr.Message));
}
这会将您的异常的技术细节记录到系统事件日志中(如果您需要稍后检查错误)然后在您的 ErrorPage.aspx 上,您从 Page_Load 事件的查询字符串中捕获异常消息。如何显示它取决于您(您可以使用其他答案中建议的 javascript 警报或简单地将文本传递给 asp.net 文字
希望他的帮助。干杯