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.
Riceve una lista dei 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
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.
Nota: Impostare questo parametro in true modalità SharePoint può ridurre significativamente le prestazioni della tua applicazione.
Valori restituiti
Matrice di oggetti CatalogItem. Se non esistono figli, questo metodo restituisce un array vuoto.
- Attributi
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 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
La tabella sottostante mostra informazioni sull'intestazione e sui permessi di questa operazione.
| Utilizzo dell'intestazione SOAP | (Dentro) TrustedUserHeaderValue (Fuori) ServerInfoHeaderValue |
| Permessi richiesti per la modalità nativa |
ReadProperties su Item |
| Permessi richiesti in modalità SharePoint | <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> |
Questo metodo restituisce solo gli 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 questo metodo viene chiamato alla radice del database del server di report con My Reports abilitato, il metodo restituisce un array di CatalogItem oggetti contenenti proprietà della cartella My Reports. Se l'utente è anonimo e My Reports è abilitato, le proprietà di My Reports non vengono restituite quando questo metodo viene chiamato sulla root.
Questo 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.