Lingua

ReportingService2005.ListChildren(String, Boolean) Metodo

Definizione

Riceve una lista dei 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

Il nome completo del percorso della cartella genitore.

Recursive
Boolean

Un'espressione Boolean che indica se restituire l'intero albero degli elementi figli al di sotto dell'elemento specificato. Il valore predefinito è false.

Valori restituiti

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

Esempio

Per compilare il seguente esempio di codice, devi fare riferimento al WSDL di Reporting Services e importare determinati namespace. Per maggiori informazioni, vedi Compiling and Conducting Code Examples. Il seguente esempio di codice utilizza il ListChildren metodo per leggere il contenuto della radice dell'albero della directory del report server, e poi memorizza il primo elemento e le sue 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

La tabella sottostante mostra informazioni sull'intestazione e sui permessi di questa operazione.

Intestazioni SOAP (Fuori) ServerInfoHeaderValue
Autorizzazioni necessarie ReadProperties su Item

Il ListChildren metodo restituisce solo elementi figli che l'utente ha il permesso di visualizzare. Gli elementi restituiti potrebbero non rappresentare un elenco completo degli elementi figli dell'elemento genitore specificato.

Se il ListChildren metodo viene chiamato sulla radice del database del server report con My Reports abilitato, il metodo restituisce un array di CatalogItem oggetti contenenti proprietà per la cartella My Reports. Se l'utente è anonimo e i My Reports sono abilitati, le proprietà dei My Reports non vengono restituite quando ListChildren viene chiamato sulla root.

Il ListChildren metodo può restituire la VirtualPath proprietà degli elementi nel database del server di report che supportano percorsi virtuali. Il percorso virtuale è il percorso sotto il quale un utente si aspetta di vedere l'elemento. Ad esempio, un report chiamato "Report1" situato nella cartella personale I miei rapporti dell'utente ha un percorso virtuale uguale a "/I miei rapporti". Il percorso effettivo dell'oggetto è /Users/Username/I miei rapporti.

La maggior parte delle proprietà restituite da questo metodo sono di sola lettura. Per maggiori informazioni sulle proprietà degli elementi nei Reporting Services, consulta Proprietà degli oggetti del Servizio di Report.

Si applica a