Partager via


ReportingService2005.ListChildren(String, Boolean) Méthode

Définition

Obtient la liste des enfants d’un dossier spécifié.

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()

Paramètres

Item
String

Nom du chemin d'accès complet du dossier parent.

Recursive
Boolean

Expression Boolean qui indique s'il faut retourner l'arborescence complète des éléments enfants figurant sous l'élément spécifié. La valeur par défaut est false.

Retours

Tableau d'objets CatalogItem. Cette méthode retourne un objet CatalogItem vide si aucun enfant n'existe.

Exemples

Pour compiler l’exemple de code suivant, vous devez référencer le Reporting Services WSDL et importer certains espaces de noms. Pour plus d’informations, consultez Compilation et exécution d’exemples de code. L’exemple de code suivant utilise la ListChildren méthode pour lire le contenu de la racine de l’arborescence d’annuaires du serveur de rapports, puis stocke le premier élément et ses propriétés sous forme de document 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);  
      }  
   }  
}  

Remarques

Le tableau suivant présente les informations relatives aux en-têtes et aux autorisations sur cette opération.

En-têtes SOAP (Out) ServerInfoHeaderValue
Autorisations requises ReadProperties pour Item

La ListChildren méthode retourne uniquement les éléments enfants que l’utilisateur est autorisé à afficher. Les éléments retournés peuvent ne pas représenter une liste complète des éléments enfants de l’élément parent spécifié.

Si la ListChildren méthode est appelée à la racine de la base de données du serveur de rapports avec Mes rapports activé, la méthode retourne un tableau d’objets CatalogItem contenant des propriétés pour le dossier Mes rapports. Si l’utilisateur est anonyme et Que Mes rapports est activé, les propriétés de Mes rapports ne sont pas retournées lorsque ListChildren est appelé à la racine.

La ListChildren méthode peut retourner la VirtualPath propriété des éléments de la base de données du serveur de rapports qui prend en charge les chemins d’accès virtuels. Le chemin d’accès virtuel est le chemin sous lequel un utilisateur s’attend à voir l’élément. Par exemple, un rapport appelé « Report1 » situé dans le dossier Mes rapports personnel de l’utilisateur a un chemin d’accès virtuel égal à « /Mes rapports ». Le chemin d’accès réel de l’élément est /Users/Username/My Reports.

La majorité des propriétés retournées par cette méthode sont en lecture seule. Pour plus d’informations sur les propriétés d’élément dans Reporting Services, consultez Propriétés de l’élément du serveur de rapports.

S’applique à