3

在标准回发中,如果发生异常,则会将错误记录到源“ASP.NET 4.0.30319.0”下的事件日志中。这里有很多很好的细节。

如果通过 UpdatePanel 调用在部分回发功能期间发生异常,为什么该异常没有记录到事件日志中,我需要启用什么才能使该功能正常工作?

我可以验证在这两种情况下页面的 OnError 函数都会触发,但只有在回发中才会记录错误。

4

1 回答 1

0

我不知道为什么异常没有记录到事件日志中

以下是我迄今为止发现的一些不太好的解决方法:

重新投入AsyncPostBackError

ScriptManager'AsyncPostBackError事件中捕获异常。把它包起来扔掉。

缺点

  1. 客户端 JavaScript 代码丢失了原始异常消息。
  2. 异常被不必要地包装了,这可能会使调试更加乏味。

禁用EnablePartialRendering

EnablePartialRendering在 上禁用ScriptManager

优点

  1. 以与非异步回发一致的方式处理错误。

缺点

  1. 似乎有点违背使用UpdatePanels 的目的。
  2. 您无法访问某些客户端类,例如Sys.WebForms.
于 2013-05-23T01:12:59.210 回答