在更新面板的部分回发期间发生错误时,有没有办法向用户显示错误通知?
我已经尝试使用RegisterStartupScript
和RegisterClientScriptBlock
注入脚本,但是失败了,我相信因为部分回发不成功因此更新面板的内部框架停止执行脚本,这导致我的错误通知脚本没有跑。下面是单击“测试”按钮时生成的错误,单击该按钮
下面是我用来为部分回发期间引起的所有错误注入错误通知警告框的代码。
protected void Application_Error(object sender, EventArgs e) {
Entities.Exception exceptionObj = new Entities.Exception();
Exception x = Server.GetLastError();
if (x != null) {
if (x.InnerException != null) {
exceptionObj.Message = x.InnerException.Message.ToString();
exceptionObj.StackTrace = x.InnerException.ToString();
} else {
exceptionObj.Message = x.Message.ToString();
exceptionObj.StackTrace = x.ToString();
}
}
Server.ClearError();
System.Web.UI.Page page = System.Web.HttpContext.Current.Handler as System.Web.UI.Page;
if (page != null) {
RadAjaxManager MainRadAjaxManager = RadAjaxManager.GetCurrent(page);
if (MainRadAjaxManager != null && MainRadAjaxManager.IsAjaxRequest)
// didn't work
//MainRadAjaxManager.ResponseScripts.Add(script);
// didn't work
//page.ClientScript.RegisterStartupScript(page.GetType(), Guid.NewGuid().ToString(), "alert('Yogesh');", true);
// didn't work
page.ClientScript.RegisterClientScriptBlock(page.GetType(), Guid.NewGuid().ToString(), "alert('Error Occured.');", true);
}
}
注意:我正在使用Telerik的RadAjaxManager