¿Qué pasa cuando un cliente WCF especifica varios puntos finales para el mismo contrato?

StackOverflow https://stackoverflow.com/questions/1888233

Pregunta

¿Va a consumir de todos ellos? Va a lanzar una excepción?

¿Fue útil?

Solución

Puede tener múltiples puntos finales para el mismo contrato y diferentes direcciones en la configuración del clieint, no hay problema.

Necesitan ser separados por un atributo name= único en la etiqueta <endpoint>.

<client>
  <endpoint name="tcpEndpoint"
            address="net.tcp://server:8888/SomeService"
            binding="netTcpBinding"
            contract="IYourService" />
  <endpoint name="httpEndpoint"
            address="http://server:8777/SomeService"
            binding="basicHttpBinding"
            contract="IYourService" />
</client>

Cuando se crea el proxy de cliente, es necesario proporcionar el nombre de la variable que desea utilizar:

YourClient client = new YourClient("netTcpEndpoint");

Puede ya no es sólo una instancia de su cliente y esperar que encontrar "el" punto final a utilizar, ya que hay múltiples (y no hay manera de definir uno como el "default", que se acostumbra, si no se especifica nada, por desgracia) .

Aparte de eso - no deberían surgir problemas, creo

.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top