我想我知道答案,但是有可能让global.asax Application_Error事件修改原始页面上的文本框而不是将客户端移动到其他页面吗?就像是: Exception 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;
}
}
}
}
答案 0 :(得分:1)
如果你想这样做,你应该使用页面本身的“OnError”事件。