Начиная с BTS 2009, мы называли наши проекты и сборки в соответствии с приложением, к которому они принадлежат, а также с дополнительной областью приложения или задачи:
MyCompany.Biz.MyFirstApp.dll
MyCompany.Biz.MyFirstApp.Util.dll
MyCompany.Biz.MyFirstApp.ConcernOne.dll
MyCompany.Biz.MySecondApp.dll
Мы выбрали путь для сохранения оркестровок, схем и картвместе, потому что многокомпонентные зависимости могут сделать развертывание настоящей проблемой.
Нашей главной целью было разделение исходной и целевой систем, чтобы избежать ссылок на директивы.Мы добились этого, внедрив «основные» компоненты для всех проблем, с которыми мы имеем дело:
Приложение BTS MyFirstApp
MyCompany.Biz.MyFirstApp.OrderProcessing.dll
MyCompany.Biz.MyFirstApp.Util.dll
Приложение BTS CORE
MyCompany.Biz.CORE.OrderProcessing.dll
Приложение BTS MySecondApp
MyCompany.Biz.MySecondApp.OrderProcessing.dll
И MyFirstApp
, и MySecondApp
будут ссылаться на схемы в CORE.OrderProcessing
.
Обновление
MyCompany.Biz.MyFirstApp.OrderProcessing будет содержать схему сообщений для документов входящих заказов и карту для отображения их в схему сообщений основного заказа(содержится в MyCompany.Biz.CORE.OrderProcessing ).При необходимости он также может содержать оркестровку для получения сообщений и (получения) компонентов конвейера (например, при работе с плоскими файлами).
MyCompany.Biz.MySecondApp.OrderProcessing будет содержать сообщениесхема для исходящих документов и карта для сопоставления из схемы сообщений основного заказа (для исходящих).
В этом базовом макете CORE будет просто контейнером для ваших внутренних схем сообщений, но будет лучшим местом для добавленияинформация к документам вашего заказа - например, оркестровка, которая предоставляет глобальную скидку для клиентов класса А (бизнес-правила!).Короче говоря, в основном любой шаг, который вы выполняете дважды или даже чаще при отправке или получении сообщений, и вы не хотите прикасаться, если схемы входящих или исходящих сообщений изменяются или добавляется новое приложение.