Справочник по Silverlight 3 Ria Services - PullRequest
1 голос
/ 26 июня 2009

У меня есть проект Silverlight, в котором функциональность разделена между несколькими библиотеками Silverlight из-за размера и сложности приложения. У меня возникают проблемы с определением наилучшего способа отделения доменной службы RIA, созданной в рамках проекта веб-сайта. Мне нужно иметь доступ к данным из других библиотек, так как они будут загружаться динамически в основное приложение Silverlight по мере необходимости.

1 Ответ

1 голос
/ 01 июля 2009

Я закончил тем, что взял код, сгенерированный Visual Studio в каталоге Generated_Code основного приложения Silverlight, и создал несколько библиотек Silverlight для разделения Ria DomainContext, службы аутентификации, сущностей и других служб домена, которые мы написали. Затем я извлек интерфейсы для DomainContext и т. Д. И поместил их в собственную библиотеку. Используя Microsoft Unity Framework для Silverlight, я смог отделить все свои модули от основного проекта. Все мои модули теперь используют интерфейсы. В основном приложении есть один контейнер IoC, где я регистрирую все классы, которые реализуют интерфейсы, и они внедряются в страницы по мере их создания. Не так уж и сложно. Единственное, что нужно помнить, это оставить атрибут EnableClientAccess на классах доменных служб на сервере, но удалить ссылку на проект сервера ASP.Net из основного приложения Silverlight. Я читал, что они планируют упростить это в финальной версии Ria services / Silverlight 3, поскольку другие люди жаловались на тесную связь, создаваемую текущей настройкой.

...