Pregunta

En un servicio WCF que tiene un conjunto de unión como se wsHttpBinding punto final. Sin embargo cuando se utiliza Visual Studio para Agregar referencia de servicio a mis clientes App.config muestra la unión como basicHttpBinding. ¿Alguien sabe por qué esto puede estar sucediendo?

Mi punto final en el web.config servicio (alojado en IIS 7.5). Obtiene la dirección de baseAddresses

<endpoint address=""
    binding="wsHttpBinding"
    bindingConfiguration="wsHttpServiceBinding"
    contract="MyProject.IMyService" />

app.config Cliente:

<client>
    <endpoint address="http://example.com/MyService.svc"
    binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_MyService"
    contract="Service.MyService" name="BasicHttpBinding_MyService" />
</client>
¿Fue útil?

Solución

- Ladislav Mrnka me señaló en la dirección correcta con esto. Muchas gracias.

He intentado mantener la pregunta simple como pensaba la respuesta puede ser simple. Sin embargo debería haber explicado mi juego en un poco más detalle ya que es donde la respuesta a mi problema reside.

En lugar de tener mi contrato de servicio (IMyService) que reside en mi WCF Servicios de Aplicaciones lo tenía en otro proyecto de dominio donde guardo todos mis interfaces de modo que puedan ser reutilizados largo de muchos proyectos diferentes. En mi aplicación de servicio de WCF .web.config que tenía el nombre del servicio que apunta a la interfaz del proyecto en lugar de en la aplicación. Este VS2010 causado (svcutil.exe) para crear un proxy y configuración basada en la configuración predeterminada (supongo residir en el machine.config (por WCF 4)).

Así que para resumir para cualquier otra persona que puede venir a través de este número era el nombre del servicio que apunta a la ubicación incorrecta. Asegúrese de que los puntos nombre del servicio para la ejecución (por lo general en la aplicación de servicio WCF - MyProject.MyService) y que los puntos del contrato de punto final en el contrato de servicio (en la aplicación de servicio de WCF o proyecto externo - MyProject.IMyService o AnotherProject.Interfaces.IMyService ).

Gracias por toda su ayuda.

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