Службы данных WCF - это довольно простой и быстрый способ вывести вашу модель данных - коллекции и сущности - в Интернет.Вы можете легко просматривать свои коллекции, просматривать сущности и т. Д. С помощью стандартных вызовов HTTP / REST.
Пока у вас есть в основном это - отображение и отображение сущностей и коллекций сущностей - это работает очень хорошо.Я на самом деле не знаю дополнительного бонуса, который несут службы RIA WCF, - я не слишком много исследовал.
Службы данных WCF основаны на модельном представлении ваших данных - вот где Linq-to-SQL или Entity Framework вступают в игру и позволяют вам создавать эту модель на основе вашей физической базы данных.
Однако, когда вам нужно использовать что-то вроде сервисов, ориентированных на метод, например, «Вставить клиента», «Вычислить общее количество»заказы для клиентов »и так далее, тогда сервис WCF на основе SOAP будет более подходящим.Служба WCF на основе SOAP определяет контракт службы (набор методов для вашей службы) и позволяет вам вызывать эти методы для объекта службы.
SOAP отлично подходит для бизнес-работы, ориентированной на транзакции, - это самоописаниеНапример, ваш клиент может обнаружить и опросить службу SOAP (область, в которой крайне не хватает REST - здесь нет «WSDL» или чего-то подобного для служб REST).
И если вы используете SOAP, я бы также порекомендовалиспользуя основанный на модели подход для ваших данных - создайте модель вашей базы данных и представьте методы этих объектов для внешнего мира - опять же, используя Linq-to-SQL, Entity Framework, NHibernate или какой-либо другой инструмент моделирования / ORM.Я бы не советовал использовать «классический» или «голый» ADO.NET для большей части вашей работы - это слишком много тяжелой работы и глупого кода - пусть такая инфраструктура, как Linq-to-SQL или EF, справится с этой скучной инфраструктуройдля вас и сосредоточиться на ваших реальных бизнес-требований и потребностей.