Ответ 1
Я рекомендую вам прочитать эту статью в блоге, в которой говорится, что:
Наше мышление о работе службы RIA действительно растет из проекта LINQ несколько лет назад. LINQ интегрирует семантику запроса в языки (С#, VB и т.д.), Обеспечивая общую абстракцию для работы с данными; являются ли эти данные объектами CLR в памяти, XML, реляционными данными или чем-либо еще. С RIA Services мы расширяем этот шаблон, предлагая предписывающую модель для выставления вашей логики домена по LINQ. Мы считаем, что логика домена является той частью вашего приложения, которая очень специфична для вашего домена - это конкретная бизнес-проблема, которую вы решаете.
Таким образом, для "логики домена" LINQ относится к данным, тогда как WCF по существу является поставщиком услуг.
В традиционном развитии N-уровня это означает, что:
... вы должны думать о сервисах RIA как о более проницательном слое поверх ADO.NET Data Services и WCF... Мы также ожидаем, что в конечном итоге обеспечим полный доступ ко всей мощности и гибкости от базовых служб WCF, таких как как высоко оптимизированная двоичная сериализация.
Или у вас также есть возможность использовать новый "шаблон службы RIA" для:
... легко создавать приложения ASP.NET, пользуясь всеми встроенными функциями служб RIA, такими как проверка данных, авторизация и т.д. В предпросмотре марта мы предлагаем элемент управления asp: DomainDataSource, который позволяет очень легко ASP.NET WebForms доступа к вашей логике домена. В основе этого лежит будущая версия динамических данных ASP.NET, которая позволяет легко создавать общий стандартный пользовательский интерфейс на основе логики вашего домена.
Это означает, что службы RIA могут:
- Сядьте поверх WCF (по существу, обертывая WCF-сервисы для использования приложения-клиента).
- Замените слой WCF службами RIA с использованием альтернативного источника данных (например, ADO.NET Entity Data Model/Entity Framework в соответствии с Building A Data-Driven Expense Приложение с Silverlight 3)
Также стоит проверить Mix09: создание замечательных бизнес-приложений с Silverlight 3 для другого примера.
Как я пишу это, я только что открыл Обзор Microsoft.NET RIA Services, который выглядит так, что он объясняет много рациональных за RIA Services (и, вероятно, немного яснее, чем некоторые из вышеперечисленных):