ReportingService2010.ListChildren(String, Boolean) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém uma lista de filhos de uma pasta especificada.
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()
Parâmetros
- ItemPath
- String
O nome de caminho completo da pasta pai.
- Recursive
- Boolean
Uma expressão Boolean
que indica se toda a árvore de itens filho abaixo do item especificado deve ser retornada. O valor padrão é false
.
Observação Definir esse parâmetro como true
no modo do SharePoint pode reduzir significativamente o desempenho do aplicativo.
Retornos
Uma matriz de objetos de CatalogItem. Se não existir nenhum filho, esse método retornará uma matriz vazia.
- Atributos
Exemplos
Para compilar o exemplo de código a seguir, você deve referenciar o WSDL Reporting Services e importar determinados namespaces. Para obter mais informações, consulte Compilando e executando exemplos de código. O exemplo de código a seguir usa o ListChildren método para ler o conteúdo da raiz da árvore de diretório do servidor de relatório e, em seguida, armazena o primeiro item e suas propriedades como um 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);
}
}
}
Comentários
A tabela a seguir mostra o cabeçalho e as informações de permissão sobre esta operação.
Uso do cabeçalho SOAP | (In) TrustedUserHeaderValue (Out) ServerInfoHeaderValue |
Permissões necessárias do modo nativo | ReadProperties em Item |
Permissões necessárias do modo do SharePoint | <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> |
Esse método retorna apenas itens filho que o usuário tem permissão para exibir. Os itens retornados podem não representar uma lista completa de itens filho do item pai especificado.
Se esse método for chamado na raiz do banco de dados do servidor de relatório com Meus Relatórios habilitados, o método retornará uma matriz de CatalogItem objetos contendo propriedades para a pasta Meus Relatórios. Se o usuário for anônimo e Meus Relatórios estiver habilitado, as propriedades de Meus Relatórios não serão retornadas quando esse método for chamado na raiz.
Esse método pode retornar a VirtualPath propriedade de itens no banco de dados do servidor de relatório que dá suporte a caminhos virtuais. O caminho virtual é o caminho sob o qual um usuário espera ver o item. Por exemplo, um relatório chamado "Report1" localizado na pasta pessoal Meus Relatórios do usuário tem um caminho virtual igual a "/Meus Relatórios". O caminho real do item é /Users/Username/My Reports.
A maioria das propriedades que esse método retorna são somente leitura. Para obter mais informações sobre as propriedades do item no Reporting Services, consulte Propriedades do item do servidor de relatório.