Лучше поместить бизнес-логику в службу WCF или код на управление Silverlight? - PullRequest
0 голосов
/ 16 февраля 2011

Пытаясь спроектировать архитектуру для приложения Silverlight, я спрашиваю, лучше ли:

используйте модель данных сущностей со службой данных WCF, а затем поместите мою бизнес-логику в код для моего пользовательского элемента управления silverlight для выполнения любых изменений / управления чистыми данными, возвращенными из службы данных WCF

или

использовать модель данных сущностей со службой WCF, а затем поместить свою бизнес-логику в реальную службу, используя методы [OperationContract], в которых я могу применять свою бизнес-логику на уровне обслуживания, обеспечивая тем самым чистое разделение между представлением (silverlight) и бизнес (услуга)

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

Спасибо

Ответы [ 2 ]

2 голосов
/ 16 февраля 2011

Лично я бы использовал комбинацию выше (с изменениями).

Я бы вставил бизнес-логику и бизнес-правила, в зависимости от ситуации, в вашу службу WCF.Это имеет много преимуществ, в том числе позволяет службе выполнять всю проверку и проверку данных (что должно быть в любом случае), не требуя, чтобы это происходило дважды.Это способствует повторному использованию вашего сервиса для приложений в будущем, поскольку логика в ней зависит от домена и не привязана к конкретному уровню представления или дизайну приложения.1005 * это приложение в сервис.Вместо этого я бы использовал подход MVVM и поместил логику для конкретного приложения (отдельно от бизнес-правил) в класс ViewModel, и использовал бы это из ваших представлений Silverlight.Я бы старался избегать использования выделенного кода как места для внедрения логики - будь то приложение или конкретное бизнес-правило.

0 голосов
/ 16 февраля 2011

Я бы не стал использовать бизнес-логику в реальном сервисе. Служба представляет собой Уровень интерфейса службы

По сути, он обеспечивает и интерфейс (API) между вашей "системой" и внешним миром. В этом случае ваш пользовательский интерфейс.

Так что вам все еще нужен бизнес-уровень, в котором есть ваша логика. и уровень интерфейса службы связывается с бизнес-уровнем и отображает методы и данные как службу WCF.

...