Справочник по службам Silverlight 3 Ria

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


person RHLopez    schedule 26.06.2009    source источник


Ответы (1)


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

person RHLopez    schedule 01.07.2009