带有嵌入式 XML 数据源的 SSRS 报告非常慢

SSRS Report with embedded XML datasource very slow

我有一个非常简单的报告需要 10 分钟才能加载的问题,即使只有几行测试数据。报表设计器中的预览最多只需几秒钟。

该报告使用嵌入式 XML 数据源。有一个包含几个字段的数据集。数据源的查询是动态创建的,并使用报表参数值作为查询 XmlData 元素的内容。 in this Microsoft blog post 描述了这种技术。 XML 数据参数由我的应用程序在加载报告之前动态生成。

似乎每个字段都会使加载报表的时间增加大约 30 秒。我将内容直接嵌入到查询字符串中(不使用参数)它仍然需要 30 秒。是否有另一种方法可以使用动态生成的 XML 数据加载报告?

我还没有找到改善嵌入式 XML 数据源加载时间的方法。该技术 described in the blog post 不可用(至少对于 SSRS 2008-R2),应避免使用。

我已经切换到 XML file 数据源,该数据源从参数获取其连接字符串,该参数指向上传到的 XML 文件报表服务器。在执行报告之前,我的应用程序使用 CreateCatalogItem 上传了文件。该文件的 URL 在加载报告时作为参数传递。

URL是使用服务器地址和文件路径构造的,它看起来像这样:
http://127.1.2.3:81/ReportServer?%2fMyXmlData.xml&rs:Command=GetResourceContents

报告现在在一秒钟内加载。