显示在回传期间引起的错误

时间:2016-04-05 11:05:32

标签: javascript c# asp.net telerik

在更新面板的部分回发期间发生错误时,有没有办法向用户显示错误通知?

我已经尝试使用RegisterStartupScriptRegisterClientScriptBlock注入脚本,但是失败了,我相信因为部分回发不成功因此更新面板的内部框架停止执行脚本,这导致我的错误通知脚本没有跑。下面是单击“测试”按钮时生成的错误,单击该按钮 enter image description here

下面是我用来为部分回发期间引起的所有错误注入错误通知警告框的代码。

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

0 个答案:

没有答案