ReportingService2010.ListChildren(String, Boolean) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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.