Приложение Silverlight 4 Secure LOB - WCF против WCF Ria Services - PullRequest
3 голосов
/ 16 июня 2011

Я новичок в Silverlight и планирую разработать приложение Secure LOB, которое подключается к бэкэнду SQL для компании, в которой я работаю.Я читал вокруг темы об услугах и прочитал различные мнения о WCF против Ria Services, многие из которых касаются Silverlight 3. Поскольку сейчас мы находимся на Silverlight 4 и Silverlight 5 в бета-версии, я надеялся получить более свежую информациюответы.Прошу прощения, если в моих знаниях есть пробелы в процессе обучения.

  1. Я прочитал, что Ria Services подходит для небольшой базы данных.«Меньшая база данных» была неясной, и ей было интересно, может кто-нибудь объяснить это?

  2. Учитывая, что службы RIA дублируют SQL / Linq обратно клиенту, это создает какие-либо риски для безопасности с помощью обратного инжиниринга?

  3. Я читал, что Услуги RIA ограничены по сравнению с Услугами WCF.В каком отношении это ограничено?Если RIA не может выполнить часть нашей логики, могу ли я реализовать нормальную Службу WCF в проекте Служб RIA?

  4. В настоящее время мы планируем подключаться к службам только через Silverlight, но будемСлужбы RIA усложняют ситуацию, если мы планируем расширение в будущем?

  5. Можно ли одновременно запускать Silverlight через локальную сеть и Интернет?

  6. Идет ли Microsoft в качестве одной из двух версий в качестве стандарта для будущих выпусков?

  7. Что бы вы порекомендовали?

Заранее спасибо.

1 Ответ

4 голосов
/ 16 июня 2011

Вот мои мысли. (Для полного раскрытия я работаю в команде RIA.)

  1. Службы RIA DomainServices работают лучше всего, когда вы разбиваете их на блоки работы. Тем не менее, это может быть сложно разделить ваши отношения с базой данных, чтобы сделать это правильно, и часто люди просто используют один DomainService для всего своего приложения. Размер DomainService масштабируется с количеством имеющихся у вас таблиц / сущностей, поэтому иногда он становится громоздким.
  2. Разрешение LINQ на клиенте не раскрывает больше, чем могло бы предоставить ваша служба. Это действительно только позволяет клиентам сузить и сформировать данные, которые возвращаются. Если вы беспокоитесь о безопасности, RIA предоставляет атрибуты авторизации (requireAuthenticationAttribute и т. Д.), Которые можно использовать для защиты ваших служб.
  3. RIA построен на WCF, поэтому вы обладаете той же мощью базовой структуры. Однако, поскольку RIA выполняет большую часть конфигурации за вас, вы не обладаете таким широким спектром гибкости.
  4. Это может сделать это проще. См. сообщение Джеффа о RiaJS .
  5. Да.
  6. WCF уже является стандартом. RIA построен на основе WCF для упрощения общих сценариев и расширенных клиентов.
  7. Если RIA подходит для вашего приложения, начните с него. По мере развития вашего приложения не бойтесь смешивать несколько служб WCF, в которых RIA не предоставляет необходимую поддержку. С V1 RIA работает лучше всего, когда вы играете по правилам (операции CRUD для сущностей, операции вызова для других вещей). На форумах не мешало бы спросить, делают ли люди то, что, по вашему мнению, вы хотели бы сделать в вашем приложении.
...