Proxy de servicio y sesiones
El proxy de servicio tiene comportamientos especiales para los enlaces de canal de sesión y no basados en sesión. El proxy de servicio proporciona semántica basada en sesiones si el enlace de canal subyacente se basa en la sesión. En este caso, se usa un único canal para atender las llamadas. Sin embargo, si el enlace de canal no se basa en la sesión, el proxy de servicio crea un canal independiente para cada llamada. Sin embargo, tenga en cuenta que los canales no basados en sesión se agrupan y quizá se reutilizan. En la reutilización de un canal, el proxy de servicio mantiene abierto el canal si el canal subyacente no se ha producido un error o la llamada en un canal ha provocado que el proxy de servicio produzca un error en el canal. Tenga en cuenta que. excepto en caso de error, una vez que se abre un canal, se mantiene abierto siempre que el proxy de servicio esté abierto y se cierre solo cuando se cierre el proxy de servicio.
Si el enlace de canal se basa en la sesión y si se produce un error en el canal subyacente, la máquina de estado del proxy de servicio pasará al estado WS_SERVICE_PROXY_STATE_FAULTED . En el caso del enlace de canal no basado en sesión, un error en el canal subyacente no hace que el proxy pase al estado WS_SERVICE_PROXY_STATE_FAULTED .
Para obtener más información sobre el proxy de servicio y su relación con el estado, consulte el tema Proxy de servicio . Para obtener ejemplos de diferentes enlaces de canal, consulte los ejemplos siguientes:
- enlace de canal que no es de sesión, HttpCalculatorClientExample
- enlace de canal basado en sesión, SessionfullCalculatorClientExample