如何获取报告服务实例上可用的报告列表

时间:2010-07-21 06:06:11

标签: c# api reporting-services

我正在尝试用c#枚举用户报告服务的报告。

我该怎么做?是否有我应该使用的Web服务调用,或者我应该从http://localhost/ReportServer/lists.asmx获取html并将其分开?

第二个选项听起来有点像黑客。当然有更好的方法吗?

1 个答案:

答案 0 :(得分:27)

SSRS有一个完整的SOAP API,你可以在这里看到关于它的信息:http://technet.microsoft.com/en-us/library/ms155376.aspx

从上面的文章:

   // Create a Web service proxy object and set credentials
   ReportingService2005 rs = new ReportingService2005();
   rs.Credentials = System.Net.CredentialCache.DefaultCredentials;

   // Return a list of catalog items in the report server database
   CatalogItem[] items = rs.ListChildren("/", true);

   // For each report, display the path of the report in a Listbox
   foreach(CatalogItem ci in items)
   {
      if (ci.Type == ItemTypeEnum.Report)
         catalogListBox.Items.Add(ci.Path);
   }

还有一个完整的教程:http://technet.microsoft.com/en-us/library/ms169926.aspx