2

如何从远程 SSRS 报告中检索元数据,例如描述、修改/创建日期等。报告本身在 aspx 页面上的 ReportViewer 控件中显示没有问题,因此我可以访问报告...

.ServerReport 对象中的这些值似乎没有任何属性...

多谢!

4

1 回答 1

0

有两种方法,一种方法是向报告服务器的 Web 服务接口添加 Web 引用并调用 GetReportDefinition 方法。更多信息在这里:

http://msdn.microsoft.com/en-us/library/aa258101(SQL.80).aspx

代码可能如下所示:


ReportingService reportingService = new ReportingService();

XmlDocument xmlDocument = null;

byte[] reportDefinition = reportingService.GetReportDefinition(ReportName);

using (MemoryStream memoryStream = new MemoryStream(reportDefinition))
{
    xmlDocument = new XmlDocument();
    xmlDocument.Load(memoryStream);
}

这将获取您可以使用 XML 工具解析的 .rdl 文件。您还可以通过 SQL/ADO/Linq 调用 SSRS 数据库中的表来获取您所需要的信息:

针对报告服务数据库的 T-SQL 的一些很好的示例:

http://www.purplefrogsystems.com/blog/?p=13

您需要的所有信息可能不在一个位置,例如,有些可能在 .rdl 中,有些在 SQL Server 数据库中。

{6230289B-5BEE-409e-932A-2F01FA407A92}

于 2009-05-07T22:02:50.303 回答