Un par de preguntas muy básicas. Soy nuevo en WCF y estoy construyendo una aplicación que tiene un proyecto de servicio, un proyecto de aplicación web y algunos proyectos de biblioteca de clase que utilizo para lógica empresarial, etc.Agregar referencias de servicio WCF a varios proyectos
Estoy alojando el WCF localmente en mi IIS y tratando de agregar referencias de servicio a los proyectos.
Pregunta 1. Al agregar referencias, ¿debo agregar una referencia de servicio a cada proyecto por separado o hay una manera en que puedo compartir la misma referencia de servicio en todos los proyectos?
La razón por la que pregunto es porque si agrego referencias separadas, cada referencia obtiene su propio espacio de nombres, y cuando tengo que pasar el mismo objeto entre los proyectos, obtengo una InvalidCastException porque cada ServiceClient tiene un espacio de nombres diferente.
Ejemplo -.. Site.Business.XDataService.XDataServiceClient() GetItem() no es lo mismo que Site.Web.XDataService.XDataServiceClient() GetItem()
Pregunta 2. que especifica la dirección del servicio local en la clase que implementa la interfaz de servicio de la siguiente manera -
[ServiceBehavior (Espacio de nombres = "http: // localhost: 801/XDataService.svc", IncludeExceptionDetailInFaul ts = verdadero)]
Esto no parece correcto. Si muevo mi código a un entorno diferente/vivo, obviamente tendré que cambiar esta parte nuevamente y volver a compilar. ¿Dónde puedo especificar esto (Web.Config?) Para poder cambiar esta dirección sin tener que reconstruir mi aplicación?
Apreciar cualquier tipo de idea. Gracias!
Gracias por la explicación. Pero si el proyecto WCF también está en la misma aplicación, ¿me recomendaría que creara dos proyectos, uno sería el servidor de servicios donde se encuentra todo el código y el otro un cliente de servicio que estoy utilizando como referencia para los otros proyectos? ? – Kalyan
Sí, dos proyectos y sí un cliente de servicio al que hace referencia en sus otros proyectos – Murph