WCF Data Services es la implementación de Microsoft del protocolo general OData. Como tal, solo los Servicios de Datos WCF son/soportan/implementan OData - un servicio WCF "normal" no no (y puede no).
Es posible que necesite elaborar exactamente por qué siente la necesidad o la necesidad de utilizar OData pero no utiliza los servicios de datos WCF. ¿Cuál es el problema/problema que tiene con esa configuración? ¿POR QUÉ desea utilizar solo un servicio WCF "normal"?
Actualización: bien, por lo que quieren tener los servicios que exponen los datos de diferentes maneras y con diferentes métodos. Lo que podría hacer es crear un servicio WCF regular que exponga ambos extremos SOAP así como un punto final REST webHttpBinding
. Esto funcionará, pero luego es un servicio WCF "regular", con métodos que toman parámetros y devuelven cierta estructura de datos. Esto es no WCF Data Service (OData).
OData es más de un "aquí está mi colección de datos, se puede navegar alrededor de ella" tipo de enfoque - es más sobre la exposición de todo un modelo de datos al mundo exterior usando REST. Esto no se mezcla y combina con SOAP, que está mucho más orientado a los procedimientos, p. LoadCustomer
, SaveInvoice
y así sucesivamente.
Así que si bien es absolutamente posible tener servicios WCF orientados a procedimientos que expongan los puntos finales SOAP y REST al mismo tiempo, realmente no veo cómo se puede mezclar y combinar el tipo de enfoque "exponer-este-recurso" para WCF Data Services/OData con un enlace SOAP: esto simplemente no funciona, creo.
Así que si debe exponer su modelo de datos de WCF Data Services (OData), tendrá que crear un segundo servicio WCF bastante diferente para los clientes SOAP, que podría basarse en los mismos datos al final (accede a la misma base de datos, por ejemplo), pero su "cara" se verá bastante diferente.
en realidad estamos buscando desarrollar servicios que expongan datos en diferentes formatos, así que solo estaba pensando, si podemos tener todo en uno. No es que quiera usar el servicio de wcf normal, lo que sea que se ajuste al requisito. – genericuser
Los datos deben exponerse sobre oData y deben ser relajantes. Los clientes también podrían querer SOAP. Si hay alguna información que pueda aclarar mis conceptos sobre oData con wcf, lo que podría ser posible con ella, será muy útil. – genericuser
@ Priya10: actualizó mi respuesta –