/ / Призма модули и WCF услуги препратки в Призма настолни приложения - wpf, wcf, модул, призма

Модули за призма и препоръки за обслужване на WCF в приложението Prism Desktop - wpf, wcf, модул, призма

Аз правя Prism десктоп приложение и възнамерявам да използвам услугите на WCF за попълване на списъчни полета и т.н.

Прочетох ръководството от корицата до корицата и създадох решението си така, че да имам: -

1) Проект Shell
2) Инфраструктурен проект
3) Модул1
4) Модул2

В Module1 имам viewmodel, която съдържа ObservableCollection Клиенти попълнен чрез извикване на WCF услуга директно в модела за преглед.

Не смятам, че това е правилно и искам да следвам Prism най-добрата практика за рефериране на услугата WCF.

Първият ми опит беше да създам интерфейсIWCFCustomersAdapter в проекта за инфраструктура и го пренасочват при повиквания към клиента на WCF. Той се изпълнява в проекта за инфраструктура. Референтната услуга също се добавя към проекта за инфраструктура. Всеки модул има препратка към инфраструктурния проект и използва типовете данни, дефинирани в услугата WCF.

Какви са другите / най-добри избори в товаобстоятелство? Може ли интерфейсът да продължи в инфраструктурния проект, а референциите и изпълнението на услугите да отидат в модулите? Какви са предимствата и недостатъците на различните избори?

Всички съвети и съвети са най-ценни.

Благодаря

Алекс

Отговори:

2 за отговор № 1

Инфраструктурният модул е ​​само завидовете, използвани за съвместна работа на модулите. Това са предимно видове, използвани за комуникация, събиране на събития, обработка на изключения и т.н.

От моя гледна точка специален сервизен модуле по-добро място. Ако вашият сървър предлага няколко услуги, можете да въведете комуникационен модул на сървъра, който съдържа всички сервизни адаптери, както и DTO. Тези DTO могат да се използват и като модели.

Ако вашият сървър предоставя доста услуги, виеможе да раздели вашия модул за услуги на по-специфични, напр. модул за управление на потребителите с управление на сесии, управление на потребители, управление на права и т.н.