Pregunta

Quiero exponer mi capa de servicios (que se escribe actualmente como biblioteca de clases estándar con POCOs) para aplicaciones externas, así como el consumo interno. Los clientes externos van a usar durante las API estilo REST, mientras que internamente mi MVC aplicación va a utilizarlo durante net.tcp vinculante para un mejor rendimiento.

¿Cómo hago esto con elegancia? Puedo escribir 2 envolturas uno de REST utilizando VS2010 Beta 2 ofrece descanso y otras fijaciones estándar utilizando WCF.

¿Puedo hacer esto en una envoltura? o mejor simplemente refactorización mis servicios existentes WCF y exponer en diversos parámetros utilizando diferentes encuadernaciones como WebHTTPBinding, wsHttpBinding, etc.

Saludos,

Ajay

¿Fue útil?

Solución

Su biblioteca servicio sólo contendrá la implementación del servicio - su servicio (y datos) contratos deben estar en su propia asamblea separada "contratos"

.

La cuestión del alojamiento y qué protocolo utilizar es manejado por su servicio host - esto puede ser IIS o un servicio de NT independiente o una aplicación de consola o algo así. Es decir completamente independiente de la clase de servicio y la biblioteca de servicio.

Así que sí - se puede crear fácilmente una biblioteca de servicio y luego exponer que el servicio a través de una multitud de puntos finales en su host de servicio -. Esas dos cosas deben mantenerse totalmente separados el uno del otro

Otros consejos

Claro que se puede simplemente añadir más de ellos en el fichero de configuración o utilizando el código.

VS 2010 Beta 2 de características resto son ellos mismos construido encima de WCF, por lo que si desea utilizarlos usted tendrá que refactorizar su servicio en un servicio WCF de todos modos. En ese momento, como dicen Dani y marc_s, puede agregar fácilmente criterios de valoración adicionales al servicio a través del archivo de configuración.

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