Partilhar via


Adicionando cabeçalhos SOAP a aplicativos cliente

Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.

O SQL Server fornece suporte para cabeçalhos de extensão SOAP quando você está usando os XML Web Services Nativos. Esses cabeçalhos podem ser usados para estender e aprimorar aplicativos baseados em SOAP usando opções SQL e outros cabeçalhos de extensão SOAP aceitos, como sessões SOAP e WS-Security (Web Services Security). Para obter mais informações, consulte Cabeçalhos de extensão SOAP.

Este tópico caracteriza uma biblioteca de classe de exemplo que implementa todos os cabeçalhos de extensão SOAP opcionais que são aceitos pelo SQL Server. Essa biblioteca pode ser adicionada a projetos existentes de cliente SOAP do Visual Studio 2005. Isto inclui os aplicativos de exemplo fornecidos em Aplicativos de exemplo para enviar solicitações de XML Web Services Nativos.

Além disso, recomendamos os seguintes tópicos se você estiver trabalhando com cabeçalhos que implementam suporte à segurança ou sessões usando os cabeçalhos apropriados de extensão SOAP para cada um desses recursos.

ObservaçãoObservação

O procedimento a seguir pressupõe que você tenha criado um aplicativo cliente SOAP existente com o Visual Studio 2005 e adicionado uma referência Web ao ponto de extremidade HTTP SOAP que foi criado com o SQL Server, como mostrado em Enviando solicitações SOAP usando o cliente Visual Studio 2005 (C#).

Para adicionar a biblioteca de exemplo do cabeçalho de extensão SOAP a um projeto do Visual Studio

  1. Com o Bloco de Notas, copie e cole o conteúdo da Listagem de código C# para a biblioteca de classes de exemplo de cabeçalho SOAP SQL e salve-o com o nome "SqlSoapHeader.cs" na mesma pasta que contém os arquivos de projetos de cliente SOAP.

  2. No computador cliente, no grupo de programas Microsoft Visual Studio 2005, inicie o Microsoft Visual Studio 2005.

  3. Clique em Abrir Projeto.

  4. Procure e selecione o arquivo do seu projeto de cliente SOAP (.csproj).

  5. Na janela Gerenciador de Soluções, siga estas etapas:

    1. Selecione o projeto pelo nome, clique com o botão direito do mouse, aponte para Adicionar e selecione Adicionar Item Existente.

    2. Na caixa de diálogo Adicionar Item Existente, procure e selecione o arquivo SqlSoapHeader.cs no local onde você o salvou na etapa 1.

    3. Selecione Mostrar Todos os Arquivos, expanda o nó Referências da Web e selecione o arquivo Reference.cs.

  6. Na janela Editor de Código, atualize o arquivo Reference.cs para adicionar uma variável pública à classe de definição de ponto de extremidade. A variável deve ser da mesma SqlSoapHeader classe que o tipo de cabeçalho opcional SOAP.

    Por exemplo, para adicionar uma variável de propriedade pública chamada "sqlSecurity" da classe SqlSoapHeader.Security ao arquivo Reference.cs na definição de classe do ponto de extremidade ("sql_endpoint"), você adicionará a seguinte linha de código:

    public class sql_endpoint : System.Web.Services.Protocols.SoapHttpClientProtocol {
         public SqlSoapHeader.Security  sqlSecurity
    
  7. Adicione a propriedade SoapHeaderAttribute apropriada ao método da Web para o qual você quer habilitar o cabeçalho SOAP.

    Por exemplo, se você estivesse implementando a classe Segurança, adicionaria a seguinte linha de código:

    [System.Web.Services.Protocols.SoapHeaderAttribute("sqlSecurity")]
    public int UDFReturningAScalar() {...}
    
    ObservaçãoObservação

    Neste exemplo, o valor de argumento sqlSecurity que é usado com SoapHeaderAttribute deve corresponder ao nome de variável que foi usado na etapa anterior.