Риа Сервисес против WCF Dataservices - PullRequest
5 голосов
/ 19 марта 2010

Моя команда - оценка для более крупного бизнес-портала.(Выставление счетов, Бухгалтерия, Зарплаты .....)

Мы все привыкли работать с DDD, O / R-мапперами с NHibernate в качестве нашего первого выбора.Мы решили работать с CompositeWPF, чтобы сохранить модульность между всеми модулями и системой деталей в бизнес-портале.

Теперь мы оценили Ria Services и разочарованы тем, как это работает в режиме, ориентированном на данные.быть хорошими в сервис-ориентированном сценарии, но мы чувствуем, что мы можем с объектно-ориентированным подходом, и мы чувствуем, что мы можем получить приложение с меньшей сложностью с подходом OO, чем подход DO.Например, он не позволяет использовать объекты-значения, отношения «многие ко многим», все должно иметь ключи и т. Д.

Мы еще не рассматривали службы данных WCF, поэтому наш вопрос - службы данных WCF, нашиanswere?Хорошо ли он интегрируется с Silverlight 4?Можем ли мы работать с ним в ОО манере?

1 Ответ

2 голосов
/ 19 марта 2010

RIA / WCF - это не замена карт O / R и т. Д. Речь идет о предоставлении данных в открытом формате другому приложению. Не высокого класса, но в основном для интеграции. ИМХО довольно глупо помещать это в приложение, но это отличный внешний интерфейс, особенно с учетом поддержки инструментов.

Хорошие примеры:

  • Банковский учет доступа. Если бы я только мог делать банковские операции на дому с использованием Odata;) И вывести свои счета в Excel.
  • Торговля;) Да, хорошо - у меня есть торговый сервер (который затем подключается к различным брокерам). У меня есть веб-интерфейс. Теперь я также предоставлю некоторые данные через OData, так что я могу легко вывести вещи в Excel и т. Д. Или даже использовать приложение Silverlight для некоторых вещей ... но я НЕ буду использовать OData в одном приложении для замены моей объектной инфраструктуры Слишком много парения.
  • Ebay может предоставить интерфейс OData для крупных клиентов. Приятно получить обзор ваших аукционов и провести базовое обслуживание вашего аккаунта. Ничего, высокая производительность, но опять же, поддержка TOOLING. Excel, все службы отчетов скоро поддерживают OData.

Если вы посмотрите на это с точки зрения интеграции, это имеет ОЧЕНЬ большое значение. Это не полная среда - это «никогда» не работает. Тем не менее, это отличная стандартизация - открыть приложение с семантикой (лучше, чем веб-сервисы - стандартизированная логика запросов и фильтров) и поддержкой инструментов.

Я почему-то не сталкиваюсь со многими проблемами с множеством упомянутых вами предметов:

  • Все, с чем я работаю, имеет ключ для определения
  • Я никогда не много: много отношений. У меня всегда есть промежуточный объект WITH A KEY .... чтобы я мог добавить к нему свойства (и, если это только временная метка).

Службы ориентированы на данные, и серьезно - я их люблю. Я большой фанат OO, но поддержка инструментов делает его идеальным внешним интерфейсом для приложений.

...