Cómo crear un servicio que requiere sesiones
Las sesiones crean un estado compartido entre dos o más extremos que habilita funciones útiles como las devoluciones de llamada, la seguridad de salto múltiple y asociaciones entre clientes e instancias de servicio. Para obtener más información acerca de sesiones en aplicaciones de Windows Communication Foundation (WCF), vea Uso de sesiones.
Especificar que un contrato requiere su enlace para admitir sesiones
Crear un contrato de servicio que contenga al menos una operación. Para obtener un ejemplo sobre cómo crear un contrato de servicios, vea Definición de un contrato de servicio de Windows Communication Foundation.
Modifique el System.ServiceModel.ServiceContractAttribute que declara el contrato estableciendo la propiedad System.ServiceModel.ServiceContractAttribute.SessionMode en:
- System.ServiceModel.SessionMode.Required si este contrato se debe ejecutar dentro de una sesión.
- System.ServiceModel.SessionMode.Allowed si este contrato puede ejecutarse dentro de una sesión.
- System.ServiceModel.SessionMode.NotAllowed si este contrato no se debe ejecutar dentro de una sesión.
Configure su extremo de servicio para que use un enlace que admita sesiones. El siguiente ejemplo de configuración muestra el uso de System.ServiceModel.WSDualHttpBinding, que admite una sesión WS-ReliableMessaging.
Ejemplo
El siguiente código de ejemplo muestra cómo especificar un requisito de sesión del nivel de contrato y utilizar un archivo de configuración para admitir ese requisito con el enlace System.ServiceModel.WSDualHttpBinding.
Consulte también
Referencia
System.ServiceModel.ServiceContractAttribute
System.ServiceModel.ServiceContractAttribute.SessionMode
System.ServiceModel.SessionMode