válido valor para example este endpointaddress configurar bindingconfiguration basichttpsbinding .net wcf wcf-endpoint

.net - valor - Determine qué wcf endpoint se está utilizando en el servidor



wcf endpoint configuration (2)

Tengo un servicio wcf que está exponiendo un servicio utilizando dos puntos finales. Un punto final se usa para llamadas al servicio web mientras que el otro usa el resto.

¿Hay alguna forma de determinar desde qué punto final se están llamando las funciones del servidor?


En realidad, al contrario de lo que pensaba, en realidad es bastante fácil averiguar en qué punto final se recurrió al servicio. En su método de servicio, agregue estas líneas de código:

OperationContext oc = OperationContext.Current; if(oc != null) { string wasCalledOn = oc.EndpointDispatcher.EndpointAddress.Uri.ToString(); }

Pero como dije: usaría esto muy sabiamente y "a la defensiva" - no empieces a cambiar el comportamiento del servicio según el punto final en el que se invocó tu método - ¡eso sería un mal diseño!

Intenté esto con varios puntos finales SOAP: no estoy 100% seguro de cómo se manejará REST (pero lo más probable es que sea igual o muy similar), ¡pruébalo!

¡Pero para iniciar sesión, esto debería funcionar bien!


Levantado de la entrada del blog aquí :

Solo necesita mirar LocalAddress en el Canal del Contexto de Operación actual en el método:

OperationContext.Current.Channel.LocalAddress