ReportingService2005.ListChildren(String, Boolean) Metodo

Definizione

Ottiene un elenco di figli di una cartella specificata.

public:
 cli::array <ReportService2005::CatalogItem ^> ^ ListChildren(System::String ^ Item, bool Recursive);
public ReportService2005.CatalogItem[] ListChildren (string Item, bool Recursive);
member this.ListChildren : string * bool -> ReportService2005.CatalogItem[]
Public Function ListChildren (Item As String, Recursive As Boolean) As CatalogItem()

Parametri

Item
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.

Restituisce

Matrice di oggetti CatalogItem. Se non esistono elementi figlio, questo metodo restituisce un oggetto CatalogItem vuoto.

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 ReportingService2005()  
      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()  
   {  
      ReportingService2005 rs = new ReportingService2005();  
      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.

Intestazioni SOAP (Out) ServerInfoHeaderValue
Autorizzazioni necessarie ReadProperties in Item

Il ListChildren metodo restituisce solo elementi figlio che l'utente dispone dell'autorizzazione per la visualizzazione. Gli elementi restituiti potrebbero non rappresentare un elenco completo di elementi figlio dell'elemento padre specificato.

Se il ListChildren metodo viene chiamato nella radice del database del server di report con i 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 ListChildren viene chiamato nella radice.

Il ListChildren 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