从SSRS中抛出自定义异常

时间:2014-07-25 10:16:59

标签: c# reporting-services exception-handling

是否有可能从SSRS中抛出一个我可以在C#中捕获的自定义异常?

类似的东西:

try
{
    result = ssrs.Render(
        format,
        null,
        out extension,
        out encoding,
        out mimeType,
        out warnings,
        out streamIDs);
}
catch (CustomException ex)
{
    // do something
}
catch (Exception ex)
{

}

我用它来不在客户的系统中显示报告。我更喜欢在报告中保留业务逻辑。

2 个答案:

答案 0 :(得分:1)

我们想抛出异常,不根据数据生成报告。我们尝试使用自定义DLL来引发异常。不幸的是,这也没有用。

我们所做的是使用存储过程中的特定字符串引发错误,并在C#中解析异常消息,该消息非常有效。虽然不像我们想的那么好。

答案 1 :(得分:0)

抛出您在应用程序中实现的自定义异常类型?我不认为这是可能的。

但是,使用反汇编程序查看呈现代码时,它看起来似乎尝试使用基本异常类ReportViewerException包装许多Reporting Services呈现/查看异常。您可以尝试捕获该异常类型,并且应该处理许多渲染问题。

当然,您仍然可以获得ArguementOutOfRangeException之类的内容,而这些内容不会包含在ReportViewerException中。所以你可能也想考虑这一点。