Compartilhar via


Fornecendo argumentos de método de serviço Web

Um método do serviço Web do servidor de relatório envia uma solicitação para o serviço em uma determinada URL usando o SOAP por meio do HTTP. O serviço recebe a solicitação, a processa e, em seguida, retorna uma resposta. Essas solicitações e respostas estão no formulário de documentos XML.

Parâmetros Opcionais

Em alguns casos, um método de serviço Web pode ter parâmetros de entrada opcionais. Mesmo se um parâmetro de entrada de um método de serviço Web for opcional, você deverá incluí-lo e definir o valor do parâmetro como null (Nothing no Visual Basic). A configuração de um valor de parâmetro como null define o valor do elemento com esse parâmetro na solicitação SOAP como null.

O exemplo a seguir usa o método CreateFolder para criar uma nova pasta nomeada como Vendas de Produto na pasta Vendas. Ao fornecer um valor null para as propriedades da pasta, nenhuma propriedade específica ao usuário será fornecida para a pasta:

// C#  
rs.CreateFolder("Product Sales", "/Sales", null);  

Tipos dados complexos

A classe principal do serviço Web Servidor de Relatórios é ReportingService2010, que você usa para invocar as operações SOAP ou os métodos Web da classe proxy. Para suportar essa classe e seus métodos, o Reporting Services inclui tipos de dados complexos definidos pelo usuário que são específicos para os parâmetros de entrada e saída dos métodos de serviço Web. Esses tipos de dados complexos fazem parte da classe proxy gerada, que você poderá usar quando estiver desenvolvendo soluções no ambiente do Microsoft .NET Framework.

Quando você gera uma classe de proxy, os tipos de dados complexos que são definidos no arquivo WSDL são representados pelas classes de proxy, que incluem propriedades que correspondem a vários elementos SOAP dos tipos de dados complexos. As sequências desses tipos de dados se tornam matrizes de objetos que você pode enumerar através de seu código. Isso elimina a necessidade de trabalhar diretamente com as estruturas de XML enviadas nas mensagens de SOAP. O .NET Framework trata dessa tradução para você.