Agregar encabezados SOAP a aplicaciones cliente

SQL Server 2005 es compatible con los encabezados de la extensión SOAP cuando se utilizan los servicios Web XML nativos. Estos encabezados se pueden utilizar para extender y mejorar las aplicaciones basadas en SOAP mediante opciones SQL y otros encabezados de la extensión SOAP compatibles, como las sesiones SOAP y Web Services Security (WS-Security). Para obtener más información, vea Encabezados de extensión SOAP.

En este tema se presenta una biblioteca de ejemplos de clases que implementa todos los encabezados de la extensión SOAP opcionales compatibles con SQL Server 2005. Esta biblioteca se puede agregar a los proyectos de cliente SOAP Visual Studio 2005 existentes. Incluye las aplicaciones de ejemplo que se muestran en Enviar solicitudes de servicios Web XML nativos mediante aplicaciones de ejemplo.

Asimismo, se recomienda consultar los temas que se indican a continuación si se trabaja con encabezados que implementan compatibilidad con seguridad o sesiones mediante los encabezados de la extensión SOAP apropiados para cada una de estas características.

[!NOTA] En el procedimiento siguiente se considera que ha creado una aplicación cliente SOAP mediante Visual Studio 2005 y que ha agregado una referencia Web a un extremo HTTP SOAP creado con SQL Server 2005, tal como se explica en Enviar solicitudes SOAP mediante el cliente Visual Studio 2005 (C#).

Para agregar la biblioteca de ejemplos de encabezados de la extensión SOAP a un proyecto de Visual Studio

  1. Mediante el Bloc de notas, copie y pegue el contenido de Listado de código C# para la biblioteca de clases de ejemplo de encabezados SOAP SQL y guárdelo con el nombre "SqlSoapHeader.cs" en la misma carpeta que los archivos de proyecto del cliente SOAP.

  2. En el equipo cliente, inicie Microsoft Visual Studio 2005 desde el grupo de programas Microsoft Visual Studio 2005.

  3. Haga clic en Abrir proyecto.

  4. Busque y seleccione el archivo de proyecto del cliente SOAP (.csproj).

  5. En la ventana Explorador de soluciones, siga estos pasos:

    1. Seleccione el nombre del proyecto, haga clic con el botón secundario, seleccione Agregar y, a continuación, seleccione Agregar elemento existente.
    2. En el cuadro de diálogo Agregar elemento existente, busque y seleccione el archivo SqlSoapHeader.cs en la ubicación en la que lo guardó en el paso 1.
    3. Seleccione Mostrar todos los archivos, expanda el nodo Referencias Web y seleccione el archivo Reference.cs.
  6. En la ventana Editor de código, actualice el archivo Reference.cs para agregar una variable pública a la clase de definición de extremo. La variable debe ser de la misma clase SqlSoapHeader que el tipo de encabezado SOAP opcional.

    Por ejemplo, para agregar una variable de propiedad pública denominada "sqlSecurity" de la clase SqlSoapHeader.Security al archivo Reference.cs en la definición de clase de extremo ("sql_endpoint"), se agregará la línea de código siguiente:

    public class sql_endpoint : System.Web.Services.Protocols.SoapHttpClientProtocol {
         public SqlSoapHeader.Security  sqlSecurity
    
  7. Agregue la propiedad SoapHeaderAttribute apropiada al método Web para el que desee habilitar el encabezado SOAP.

    Por ejemplo, si implementa la clase Security, agregará la línea de código siguiente:

    [System.Web.Services.Protocols.SoapHeaderAttribute("sqlSecurity")]
    public int UDFReturningAScalar() {...}
    

    [!NOTA] En este ejemplo, el valor de argumento sqlSecurity que se utiliza con SoapHeaderAttribute debe corresponder al nombre de variable utilizado en el paso anterior.

Vea también

Referencia

Establecer el servidor para que escuche solicitudes de servicios Web XML nativos

Conceptos

Prácticas recomendadas para utilizar servicios Web XML nativos

Ayuda e información

Obtener ayuda sobre SQL Server 2005