Лучшая практика для совместного использования DAL между ASP.NET и Silverlight 2 - PullRequest
3 голосов
/ 02 февраля 2009

У меня есть сайт электронной коммерции ASP.NET 3.5, в котором есть раздел администратора. Я хочу поменять раздел администратора на ASP.NET и переписать его в Silverlight 2. Для Silverlight требуются асинхронные вызовы, поэтому я не могу просто вызвать свой существующий DAL из нового приложения SL2.

Как лучше всего делать что-то подобное? Должен ли я создать службу WCF и вызвать через нее мой существующий DAL, или я должен перенести все на WCF, или я должен просто добавить асинхронные вызовы в свой существующий DAL, отличный от WCF. Нужны советы о том, как сделать что-то подобное.

РЕДАКТИРОВАТЬ: Итак, я читаю, что лучший способ сделать это - использовать мой существующий DAL и создать простой сервис WCF, который ссылается на этот DAL и упаковывает вызовы. Служба WCF делает не что иное, как посредник, чтобы добраться до моего DAL, но предоставляет его Silverlight. Что делать, если вы начинаете с нуля? Если для начала вы создадите свой DAL как службу WCF и будете использовать эту службу из клиента WPF, клиента ASP.NET, клиента Silverlight, любого другого потребителя и т. Д.

Ответы [ 5 ]

8 голосов
/ 06 февраля 2009

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

Рекомендуется рекомендовать обернуть свой уровень доступа к данным службой WCF и вызвать службу WCF из Silverlight. Есть хорошая статья об этом здесь .

6 голосов
/ 02 февраля 2009

Если вам нужен DAL в нескольких местах, я бы посоветовал вам обернуть его в слой службы WCF.

Это будет зависеть от вашего DAL, но старайтесь изо всех сил обернуть существующий код в слой службы, а не переписывать все как службу. Это даст вам максимальную гибкость для тестирования и будущую масштабируемость.

0 голосов
/ 23 марта 2011

Должны ли мы иметь уровень хостинга WCF и получать доступ к уже реализованным компонентам DAL посредством отражения, а также путем генерации кода T4.

Каков будет наилучший способ использования существующего DAL для предоставления в качестве службы wcf?

0 голосов
/ 18 января 2010

RIA Services - лучший вариант на сегодняшний день. Другой способ, отличный от WCF (доступ к данным WCF трудно поддерживать в крупномасштабных LOB-приложениях в silverlight), - это RESTful-способ обмена данными между сервером и клиентом.

0 голосов
/ 18 января 2010

Конечно, если вы создаете DAL с нуля, WCF - это хороший выбор, который был доступен. Но я думаю, что теперь .NET RIA сервис будет лучшим выбором в таких сценариях. Служба .Net RIA является оболочкой только для службы WCF. Но позволяет лучше функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...