2010-02-25 16 views
7

¿Es posible agregar una referencia de servicio en Visual Studio, que genera la clase proxy local para llamar al servicio WCF cuando se usa netTcpBinding?¿Puedo agregar una referencia de servicio con netTcpBinding en WCF?

Según tengo entendido, el método de referencia del servicio requiere que el servicio exhiba un WSDL, que solo es compatible con los enlaces http no?

Quizás, podría agregar la referencia de servicio localmente en desarrollo, pero luego cambiar la configuración para usar nettcp en tiempo de ejecución en producción?

La razón por la que estoy preguntando es porque estoy alojado en un servicio de Windows (servidor 2003, entonces no hay WAS, y no puedo usar IIS). Y no podemos cambiar los permisos para hacer la reserva del espacio de nombres HTTP ... así que no podemos usar los enlaces HTTP. NetTcp funciona, pero en este caso específico, el gráfico de objetos que estamos intercambiando implica objetos generados en el servicio por un modelo de EDMX ... por lo que no podemos compartirlo en un ensamblado de contrato.

¡Gracias de antemano!

Respuesta

3

Simplemente agregue una encuadernación usando mexTcpBinding.

0

Todos los enlaces están expuestos a través de WSDL. Si agrega los enlaces NETTCP, svcutil generará atuo correctamente el cliente. No lo he usado en la referencia ADD en VS ya que siempre he preferido generar la clase con svcutil.

1

¿Es posible añadir una referencia de servicio en Visual Studio, que genera la clase proxy local para llamar al servicio WCF cuando se utiliza el netTcpBinding?

Sí, definitivamente!

Como lo entendía, el método de referencia de servicio requiere un WSDL a estar expuesta por el servicio, que sólo se apoya en los enlaces HTTP no?

No, definitivamente no - WCF metadatos (ya sea su propio formato específico, o expuestos como archivos WSDL/XSD) es definitivamente disponible para todas las llamadas basados ​​en SOAP - independientemente de su transporte.

¿Puede mostrarnos lo que tiene, en términos de configuración del lado del servidor? Lo más probable es que te falte algo de configuración de configuración o algo así: si vemos lo que tienes, ¡podríamos identificarlo y ayudarte más!

Cuestiones relacionadas