РИА Сервис и БЛЛ
В настоящее время я смотрю на сервисы RIA, чтобы ускорить разработку корпоративных приложений Silverlight. Это умно и мощно, но мне кажется, что вы неизменно собираетесь свернуть свою бизнес-логику на уровне представления. Есть ли место для классического BLL (уровня бизнес-логики) при использовании RIA?
Обновление: сделал еще некоторые исследования. Похоже, что в настоящее время принята лучшая практика - внедрить RIA с MVVM, с виртуальной машиной, работающей как класс на стороне клиента и содержащей вашу бизнес-логику.
1 ответ
Ответ на ваше обновление первым: Роль модели представления заключается в предоставлении свойств, которые должны отображаться в представлении, и управления визуальным состоянием. Это не хорошее место, чтобы повесить свой BLL (или код контроллера или любой другой мусор... который, кажется, также является лучшей практикой:)).
Сама RIA открыта благодаря использованию частичных классов. Простые бизнес-правила попадают в файл RIA metadata.cs, а сложные правила (на которые есть ссылки в том же файле метаданных) могут входить в пользовательские валидаторы.
Кажется, я помню, что вы также можете переопределить все события xxx_changing и xxx_changed в RIA.
Теперь вопрос в том, какие правила вы пытаетесь применить?