Для каких приложений или сценариев развития использование WCF Data Services имеет смысл, и когда другие технологии являются лучшим выбором (например, WCF RIA Services, ADO Entity Framework, классический ADO.NET, простые службы или что-то еще)?Когда использовать службы передачи данных WCF, а когда нет?
ответ
WCF Data Services - довольно простой и быстрый способ получить вашу модель данных - коллекции и сущности - в Интернете. Вы можете легко просматривать свои коллекции, просматривать сущности и т. Д., Используя стандартные вызовы HTTP/REST.
Пока у вас в основном это - отображение и отображение сущностей и коллекций сущностей - он работает очень хорошо. Я действительно не знаю дополнительного бонуса, который пока еще есть в WCF RIA Services, - не слишком много исследовал.
Службы данных 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, обрабатывает эту скучную инфраструктуру для вас и сосредоточиться на ваших реальных бизнес-требованиях и потребностях.
- 1. Когда использовать машину epsilon, а когда нет?
- 2. Ruby: Когда использовать себя, а когда нет?
- 3. Когда можно использовать Javascript, а когда нет?
- 4. Когда использовать представления базы данных, а когда нет?
- 5. Когда #if SERVICE работает, а когда нет?
- 6. WCF System.ArgumentNullException, когда нет аргументов
- 7. Когда вам следует использовать сервер XMPP или только службы WCF?
- 8. Когда я должен использовать AWS, а когда нет
- 9. Динамический JOIN через службы передачи данных WCF
- 10. Когда использовать WCF и когда использовать службы данных ADO на сайтах ajax?
- 11. Application.DoEvents, когда это необходимо, а когда нет?
- 12. Когда переменная нужна @, а когда нет?
- 13. Когда использовать объекты передачи данных и DataSets
- 14. Когда использовать AWT вместе с Swing, а когда нет?
- 15. , когда мы должны использовать instanceof, а когда нет
- 16. Когда мне нужно использовать include(), а когда нет?
- 17. Использование памяти: когда имеет смысл использовать UINavigationController, а когда нет?
- 18. Когда использовать «новое», а когда нет, в C++?
- 19. Когда правильно использовать вложенные контроллеры в AngularJS, а когда нет?
- 20. Как LinqPad поддерживает службы передачи данных WCF?
- 21. Когда и когда не использовать веб-службы?
- 22. Когда использовать потоки WCF
- 23. Когда использовать WCF-привязку
- 24. Когда мы инициализируем тип данных char *, а когда нет?
- 25. СинхронизацияКонтекст, когда он течет, а когда нет?
- 26. Agile - Когда это работает, а когда нет?
- 27. HTML-объекты: когда кодировать, а когда нет?
- 28. Когда я использую скобки, а когда нет?
- 29. когда использовать wcf и asp.net?
- 30. ZF2 когда использовать getServiceLocator(), а когда не
Благодарим вас за этот исчерпывающий ответ. – Kottan