title: SSRS: Get list of all reports and parameters in a single web service call?
body: <p>Short and sweet version: Is there a single web service method that would return the names of all available reports, and each report's parameters?</p>
  
  <p>I have my web code (C#/MVC) connected to a SSRS web service, and I am able to retrieve reports through those services.</p>
  
  <p>I know I can get a list of available reports like this: </p>
  
  <pre><code>var rService = new ReportingService2005
  {
   Url = @"http://domain.com/ReportServer/ReportService2005.asmx?wsdl",
   Credentials = System.Net.CredentialCache.DefaultCredentials
  };
  
  var reportList = rService.ListChildren(@"/Blah", true);
  </code></pre>
  
  <p>The result of ListChildren() gives a lot of information, but it doesn't list the parameters for each report. In order to get the parameter for a report, I need to make a separate call:</p>
  
  <pre><code>string historyId = null;
  ReportService.ParameterValue[] values = null;
  ReportService.DataSourceCredentials[] credentials = null;
  
  var parameters = rService.GetReportParameters(@"/Blah/" + reportName, historyId, true, values, credentials);
  </code></pre>
  
  <p>So if I want to get all available reports and their parameters, I would need to loop through the results of ListChildren, which means I would be making a web service call for each of those reports.</p>
  
  <p>Is there a better way of doing this?</p>