ASP.NET ToolkitScriptManager AsyncPostBackError - 从内容页面抛出异常

时间:2012-02-14 22:29:50

标签: asp.net asyncpostbackerror httpunhandledexception

想知道是否有人可以提供帮助。我正在尝试实现ToolScriptManager OnAsyncPostBackError。

ToolkitScriptManager在Masterpage上,我设置了OnAsyncPostBackError属性:

<ajax:ToolkitScriptManager ID="ToolkitScriptManager" 
    runat="server" EnablePartialRendering="true" 
    OnAsyncPostBackError="ScriptManager_AsyncPostBackError">
</ajax:ToolkitScriptManager>

在我的内容页面上,我正在捕获异常并记录它然后抛出它

    private void LogError(Exception ex, bool full)
    {
        ...
        _presenter.LogError(this, error, ex);

        throw new ApplicationException(
            "Error Occured",
            ex
            );

    }

然后由主页上的处理程序拾取

    protected void ScriptManager_AsyncPostBackError(object sender, AsyncPostBackErrorEventArgs e)
    {
        if (e.Exception.Data["GUID"] != null)
        {
            string _message =
           (
                e.Exception.InnerException != null
            ) ? e.Exception.InnerException.Message : e.Exception.Message;

            ToolkitScriptManager.AsyncPostBackErrorMessage = _message +
                " When reporting this error use the following ID: " +
                e.Exception.Data["GUID"].ToString();
        }
        else
        {
            ToolkitScriptManager.AsyncPostBackErrorMessage =
                "The server could not process the request.";
        }
    }

这一切都按预期工作,我通过PageRequestManager EndRequest获取错误并在页面上显示

  

问题是我在Global.asax中遇到一个Application_Error,说明抛出了类型为'System.Web.HttpUnhandledException'的异常。

我觉得我有点理解,因为我正在抛出一个异常,而这个异常并没有被我假设的捕捉所捕获?!

关于我缺少什么,或者实际上我哪里出错的任何建议?

提前致谢!

伊恩

0 个答案:

没有答案