Recientemente creé un servicio WCF (dll) y un host de servicio (exe). Sé que mi servicio WCF funciona correctamente ya que puedo agregar con éxito el servicio a WcfTestClient.
Sin embargo, parece que me estoy encontrando con un problema cuando llego a utilizar mi WCF desde un host de servicio (exe). Puedo agregar una referencia a WCF (dll) a mi host de servicio (exe) y crear los componentes necesarios para el exe; como el instalador del servicio, el host del servicio y la aplicación.config, compile y finalmente instale el archivo ejecutable utilizando InstallUtil. Pero, cuando intenté iniciar el servicio en Microsoft Management Console, el servicio se detiene inmediatamente después de iniciarse.
Entonces comencé a investigar qué podría estar causando exactamente este problema y se me ocurrió este error en el Registro de la aplicación en el Visor de eventos.
Descripción:
No se puede iniciar el servicio. System.InvalidOperationException: el servicio 'Service' no tiene puntos finales de aplicación (no de infraestructura). Esto puede deberse a que no se encontró ningún archivo de configuración para su aplicación, a que no se pudo encontrar ningún elemento de servicio que coincida con el nombre del servicio en el archivo de configuración, o a que no se definieron puntos finales en el elemento de servicio.
Este error se genera realmente en el OnStart
; de mi exe, cuando realizo esta llamada ServiceHost.Open()
. He visto numerosas publicaciones en las que otras personas se han encontrado con este problema; sin embargo, la mayoría, si no todas, afirman que el nombre del servicio o el contrato; el espacio de nombres y el nombre de la clase no se especifican. Verifiqué ambas entradas en mi archivo de configuración; tanto en el exe como en el dll, y coinciden PERFECTAMENTE. Otras personas en la oficina me revisaron dos veces para asegurarme de que no me quedara ciego en un momento dado, pero por supuesto llegaron a la misma conclusión que yo de que todo parecía estar especificado correctamente. Realmente estoy perdido en cuanto a lo que está sucediendo en este momento. ¿Alguien podría ayudarme con este problema?
Otra cosa que surgió como una posible razón por la que esto puede estar sucediendo es que app.config nunca se lee; al menos no el que creo que debería ser leído. ¿Podría ser éste el problema? Si es así, ¿cómo puedo abordar este problema? Una vez más, se agradecería CUALQUIER ayuda.