ReportingService2010.ListChildren(String, Boolean) Metodo

Definizione

Ottiene un elenco di figli di una cartella specificata.

public:
 cli::array <ReportService2010::CatalogItem ^> ^ ListChildren(System::String ^ ItemPath, bool Recursive);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
[System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)]
[System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")]
public ReportService2010.CatalogItem[] ListChildren (string ItemPath, bool Recursive);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)>]
[<System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)>]
[<System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")>]
member this.ListChildren : string * bool -> ReportService2010.CatalogItem[]
Public Function ListChildren (ItemPath As String, Recursive As Boolean) As CatalogItem()

Parametri

ItemPath
String

Nome e percorso completo della cartella padre.

Recursive
Boolean

Espressione Boolean che indica se restituire l'albero intero di elementi figlio sotto l'elemento specificato. Il valore predefinito è false.

Nota L'impostazione di questo parametro su true in modalità SharePoint può ridurre significativamente le prestazioni dell'applicazione.

Restituisce

Matrice di oggetti CatalogItem. Se non esistono elementi figlio, il metodo restituisce una matrice vuota.

Attributi

Esempio

Per compilare l'esempio di codice seguente, è necessario fare riferimento alla Reporting Services WSDL e importare determinati spazi dei nomi. Per altre informazioni, vedere Compilazione ed esecuzione di esempi di codice. Nell'esempio di codice seguente viene usato il ListChildren metodo per leggere il contenuto della radice dell'albero della directory del server di report e quindi archiviare il primo elemento e le relative proprietà come documento XML:

Imports System  
Imports System.IO  
Imports System.Text  
Imports System.Web.Services.Protocols  
Imports System.Xml  
Imports System.Xml.Serialization  

Class Sample  
   Public Shared Sub Main()  
      Dim rs As New ReportingService2010()  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials  

      Dim items As CatalogItem() = Nothing  

      ' Retrieve a list of all items from the report server database.   
      Try  
         items = rs.ListChildren("/", True)  

      Catch e As SoapException  
         Console.WriteLine(e.Detail.InnerXml.ToString())  
      End Try  

      ' Serialize the contents as an XML document and write the contents to a file.  
      Try  
         Dim fs As New FileStream("CatalogItems.xml", FileMode.Create)  
         Dim writer As New XmlTextWriter(fs, Encoding.Unicode)  

         Dim serializer As New XmlSerializer(GetType(CatalogItem()))  
         serializer.Serialize(writer, items)  

         Console.WriteLine("Server contents successfully written to a file.")  

      Catch e As Exception  
         Console.WriteLine(e.Message)  
      End Try  
   End Sub 'Main  
End Class 'Sample  
using System;  
using System.IO;  
using System.Text;  
using System.Web.Services.Protocols;  
using System.Xml;  
using System.Xml.Serialization;  

class Sample  
{  
   public static void Main()  
   {  
      ReportingService2010 rs = new ReportingService2010();  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;  

      CatalogItem[] items = null;  

      // Retrieve a list of all items from the report server database.   
      try  
      {  
         items = rs.ListChildren("/", true);  
      }  

      catch (SoapException e)  
      {  
         Console.WriteLine(e.Detail.OuterXml);  
      }  

      // Serialize the contents as an XML document and write the contents to a file.  
      try  
      {  
         FileStream fs = new FileStream("CatalogItems.xml", FileMode.Create);  
         XmlTextWriter writer = new XmlTextWriter(fs, Encoding.Unicode);   

         XmlSerializer serializer = new XmlSerializer(typeof(CatalogItem[]));  
         serializer.Serialize(writer, items);  

         Console.WriteLine("Server contents successfully written to a file.");  
      }  

      catch (Exception e)  
      {  
         Console.WriteLine(e.Message);  
      }  
   }  
}  

Commenti

Nella tabella seguente vengono mostrate le informazioni sull'intestazione e sulle autorizzazioni relative a questa operazione.

Utilizzo intestazione SOAP (In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue
Autorizzazioni necessarie in modalità nativa ReadProperties in Item
Autorizzazioni necessarie per la modalità SharePoint <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems>

Questo metodo restituisce solo elementi figlio che l'utente ha l'autorizzazione per visualizzare. Gli elementi restituiti potrebbero non rappresentare un elenco completo di elementi figlio dell'elemento padre specificato.

Se questo metodo viene chiamato nella radice del database del server di report con Report personali abilitato, il metodo restituisce una matrice di CatalogItem oggetti contenenti proprietà per la cartella Report personali. Se l'utente è anonimo e i report personali sono abilitati, le proprietà per i report personali non vengono restituite quando questo metodo viene chiamato nella radice.

Questo metodo può restituire la VirtualPath proprietà degli elementi nel database del server di report che supporta i percorsi virtuali. Il percorso virtuale è il percorso in cui un utente prevede di visualizzare l'elemento. Ad esempio, un report denominato "Report1" situato nella cartella Report personali dell'utente ha un percorso virtuale uguale a "/Report personali". Il percorso effettivo dell'elemento è /Users/Username/My Reports.

La maggior parte delle proprietà restituite da questo metodo è di sola lettura. Per altre informazioni sulle proprietà degli elementi in Reporting Services, vedere Proprietà elemento del server di report.

Si applica a