Compartir a través de


Intercambio de mensajes dentro de una sesión confiable

En este tema se describen los pasos necesarios para habilitar una sesión confiable utilizando uno de los enlaces proporcionados por el sistema que admiten este tipo de sesión, pero no de forma predeterminada. Puede habilitar la sesión confiable de manera imperativa mediante código o de manera declarativa mediante configuración. Este procedimiento utiliza los archivos de configuración de cliente y servicio para habilitar la sesión confiable y para estipular que los mensajes lleguen en el mismo orden en el que se enviaron.

La parte clave de este procedimiento es que el elemento de configuración del extremo contenga un atributo bindingConfiguration que haga referencia a una configuración de enlace denominada "Binding1". El elemento de configuración <binding> puede hacer referencia a continuación a este nombre para habilitar las sesiones confiables estableciendo el atributo enabled del elemento reliableSession en true. Especifica las garantías de entrega ordenada de la sesión confiable estableciendo el atributo ordered en true.

Para la copia de origen de este ejemplo, vea WS Reliable Session.

Configuración del servicio con WSHttpBinding para utilizar una sesión confiable

  1. Defina un contrato de servicios para el tipo de servicio.

  2. Implemente el contrato de servicios en una clase de servicio. Observe que la información de enlace o dirección no se especifica en ninguna parte de la implementación del servicio. Además, el código tiene que escribirse para recuperar esa información del archivo de configuración.

  3. Cree un archivo Web.config para configurar un extremo del CalculatorService que utiliza el WSHttpBinding con sesión confiable habilitada y entrega ordenada de mensajes requerida..

  4. Cree un archivo Service.svc que contenga la línea:

    <%@ServiceHost language=c# Service="CalculatorService" %> 
    
  5. Coloque el archivo Service.svc en el directorio virtual de Internet Information Services (IIS).

Configuración del cliente con un WSHttpBinding para utilizar una sesión confiable

  1. Utilice la ServiceModel Metadata Utility Tool (Svcutil.exe) desde la línea de comandos para generar código a partir de los metadatos del servicio:

    Svcutil.exe <service's Metadata Exchange (MEX) address or HTTP GET address> 
    
  2. El cliente que se genera contiene la interfaz ICalculator que define el contrato de servicios que la implementación del cliente debe cumplir.

  3. La aplicación de cliente generada también contiene la implementación de ClientCalculator. Observe que la información de enlace y dirección no se especifica en ninguna parte de la implementación del servicio. Además, el código tiene que escribirse para recuperar esa información del archivo de configuración.

  4. Svcutil.exe también genera la configuración para el cliente que utiliza la clase WSHttpBinding. Este archivo se debería denominar App.config al utilizar Visual Studio.

  5. Cree una instancia de ClientCalculator en una aplicación y, a continuación, llame a las operaciones del servicio.

  6. Compile y ejecute el cliente.

Ejemplo

Algunos de los enlaces proporcionados por el sistema admiten de forma predeterminada las sesiones confiables. Éstos incluyen:

Para obtener un ejemplo sobre cómo crear un enlace personalizado que admita sesiones confiables, vea Creación de un enlace personalizado de sesión confiable con HTTPS.

Consulte también

Otros recursos

Sesiones de confianza