0

我们使用SSRS 2005 SP1和最新的Reportviewer控件。
我们遇到了某些报告基础架构异常未暴露给任何异常处理例程的情况。SSRS 2005例外未曝光

一个特定的示例是SQL Server Reporting Services Windows服务由于VM问题而意外停止。在这种情况下,该报告正确地呈现,但是当显示的报表查看器Web控制范围内的用户,用户将看到以下消息,而不是报告:

An error has occurred during report processing. 

The Report Server Windows service 'ReportServer$MSSQL2005' is not 
running. The service must be running to use Report Server. 

的问题是,我们在所有可能的捕捉异常位置:所有页面后面的方法,ReportViewer OnReportError和应用程序OnError处理程序。在任何时候,我们都看不到客户端代码的异常。在调试器中运行时,异常在执行过程中被抛出,但不会引发到客户机代码。

有没有人见过这个?

回答

0

我在报告服务2008中看到类似于此的东西,我试图捕获某些类型的异常。 No one else replied to my question either.

但是我问这个问题之后所学的东西可能会对你有所帮助。我去了并使用了反射器,并绕过某些DLL。我搜索了我所看到的特定字符串,并发现Reporting Services似乎可以捕获它自己的异常,并且只是抛出字符串,所以对于这种类型的问题并没有太多的办法可以避免对DLL本身进行黑客攻击。除了必须删除强名称验证并使其完全无法维护以外,这种方法才有效。

1

感谢您的回复鲍勃。 SSRS正在吃掉这些例外令人惊讶和失望。我们可能会远离黑客攻击DLL并试图找出一种方法来监视和警告SSRS内部日志。