Почему службы RIA известны как черная магия? - PullRequest
0 голосов
/ 26 марта 2011

Почему люди называют службы RIA черной магией? К какой черной магии они относятся? Кроме того, я видел, что большинство людей не используют RIA, даже если они находятся в мире Silverlight. Почему это так? Даже на стеке потока процент людей, спрашивающих, а также отвечающих на вопрос об услугах RIA, очень и очень низок. Почему это так?

Ответы [ 3 ]

2 голосов
/ 26 марта 2011

Службы RIA WCF предоставляют следующие преимущества:

  • Делает службу RIA WCF, которая поддерживает IQueryable и IEnumerable;Службы WCF RIA Services создают прокси на стороне клиента, который позволяет отправлять только деревья выражений по сети от клиента, чтобы получить только те данные, которые вам нужны.Например: вы можете вызвать метод в вашей службе ria, называемый GetProducts (), но также добавить лямбду LINQ, такую ​​как GetProducts (). Где (d => d.Quantity> 50), и только выражение отправляется по проводам насервер.Сервер выполняет фильтрацию и возвращает только совпадения в виде строго типизированных объектов.
  • Динамическая генерация конечных точек OData, REST / JSON и SOAP с использованием чуть более одной строки на конечную точку в вашем web.Config.
  • Возможность автоматического переноса бизнес-правил, созданных на среднем уровне, на уровень клиента
  • Позволяет эффективно передавать валидации от среднего уровня к пользователю
  • Разрешает свойство, параметр, методбизнес-правил уровня объекта, коллекции и набора изменений с помощью простого средства проверки аннотаций данных

Существуют некоторые недостатки:

  • Все еще не поддерживает WS- * (будет в 5) для RPC
  • поставщик OData не запрашивается
1 голос
/ 28 марта 2011

Относительно части "черной магии" вашего вопроса, я полагаю, что это постоянный переход к соглашению по конфигурации .По сравнению с ванильным WCF вы в конечном итоге пишете очень мало кода для построения отношений клиент-сервер.Кроме того, инструментальные средства WCF RIA выполняют значительную часть генерации кода, чтобы достичь этого.

Более подробно о соглашении по конфигурации, особенно с WCF RIA и, как правило, на Wikipedia .

1 голос
/ 26 марта 2011

Ну, я еще не слышал о людях, которые называют WCF RIA Services черной магией.

Я думаю, что есть небольшое количество людей, использующих его (по сравнению с количеством людей, пишущих вещи в Silverlight), потому что он моложе. Люди могли разрабатывать свои приложения Silverlight уже некоторое время (версия 3.0 вышла в июле 2009 года) с использованием классических служб WCF.

Службы WCR RIA все еще новые (версия 1.0 вышла в мае 2010 года, последний пакет обновления 1 - в декабре 2010 года), и всем нам известно правило «Никогда не меняйте работающую систему», поэтому, если у кого-то уже есть работающий веб-сервис WCF, зачем это менять? В моем случае мы экспериментировали с Silverlight и WCF некоторое время назад и решили подождать. Когда появилась служба RIA, мы подумали, что это здорово, и начали работать над версией Silverlight нашего основного приложения. Использование RIA Services в новом проекте намного проще, чем изменение доступа к веб-сервису в существующем.

В дополнение к этому следует отметить, что Silverlight не ограничивается бизнес-приложениями с доступом к базе данных с использованием веб-службы. Поэтому может быть довольно много разработчиков Silverlight, которым не нужен какой-либо веб-сервис.

Другой причиной может быть тот факт, что для веб-приложений, требующих базы данных, уже давно существуют другие технологии, такие как ASP.NET, ASP.NET MVC, даже PHP или JSP (и, возможно, другие, о которых я, возможно, даже не слышал). , И хотя бизнес-приложения тоже должны хорошо выглядеть, обычно не главное требование иметь всевозможную графику, анимацию и т. Д.

Наконец, почему так мало вопросов, касающихся RIA Services, задаются на SO? Ну, у них есть свой собственный форум , который кажется довольно активным. (Я использую его в качестве ресурса при поиске ответов, но не публикую там.)

...