2010-11-09 129 views
2

启动一个BizTalk项目时,我通常会遵循找到的命名约定here。当你的名字你的项目和装配的是这样的:Biztalk项目命名约定

MyCompany.MyProject.Orchestrations.dll 
MyCompany.MyProject.Schemas.dll 
MyCompany.MyProject.Pipelines.dll 
MyCompany.MyProject.Transforms.dll 
MyCompany.MyProject.PipelineComponents.dll 

一对夫妇的其他的BizTalk乡亲问题:

1)我经常发现有使用模式或需要不同的模式不止一个项目自己。你是否将它们粘在单独的程序集中,如果是的话,那么遵循什么约定来命名项目/程序集。如果不是,您是否将它们粘贴在一个组合件的子文件夹中。

2)我相信,可能是错误的,它是一种BizTalk约定来命名项目和程序集相同,如上所述。我一直在考虑避免将项目命名为完整的程序集名称,所以我可能会将名为Maps的项目命名为MyCompany.MyProject.Maps。别人是否这样做?

回答

4

与BTS 2009开始,我们命名我们的项目和组件根据他们属于该应用程序以及一个可选的子应用或关注范围:

MyCompany.Biz.MyFirstApp.dll 
MyCompany.Biz.MyFirstApp.Util.dll 
MyCompany.Biz.MyFirstApp.ConcernOne.dll 
MyCompany.Biz.MySecondApp.dll 

我们所采取的方法,以保持业务流程,模式和地图一起因为多组件依赖可以使部署成为一件麻烦事。

我们的主要目标是分离源系统和目标系统以避免direkt引用。我们达到了这个被引入对我们处理所有问题的 “核心” 部分:

BTS应用MyFirstApp

MyCompany.Biz.MyFirstApp.OrderProcessing.dll 
MyCompany.Biz.MyFirstApp.Util.dll 

BTS应用程序核心

MyCompany.Biz.CORE.OrderProcessing.dll 

BTS应用MySecondApp

MyCompany.Biz.MySecondApp.OrderProcessing.dll 

MyFirstAppMySecondApp都将参照CORE.OrderProcessing中的模式。


更新

MyCompany.Biz.MyFirstApp.OrderProcessing将包含用于传入订单文件消息模式和地图映射那些到核心顺序消息模式(包含在MyCompany的。 Biz.CORE.OrderProcessing)。如果需要,它还可以包含一个用于接收消息和(接收)管道组件的编排(例如在处理平面文件时)。

MyCompany.Biz.MySecondApp.OrderProcessing将包含传出文档的消息模式和映射从核心顺序消息模式(到传出)的映射。

在此基本布局中,CORE仅仅是您内部消息模式的容器,但它将是向订单文档添加信息的最佳位置 - 例如为A级客户授予全局折扣的业务流程(业务规则!)。简而言之,基本上任何一个步骤在发送或接收消息时都会执行两次或更多次,而如果传入或传出的消息模式发生更改或添加了新应用程序,则不希望触及这些步骤。

+0

那么美妙BizTalk Naming Conventions指导,非共享的地图模式,你会怎么做:MyCompany.Biz.MyFirstApp.Schemas.dll和MyCompany.Biz.MyFirstApp.Schemas.dll?另外,你是否曾经关注过类似于:MyCompany.Biz.MyFirstApp.Schemas.Internal.dll? – 2010-11-12 19:54:44

+0

“我们采取了将编排,模式和地图保持在一起的路径,因为多组件依赖可能会使部署成为一件麻烦事。”我明白了,忽略我的第一条评论。 – 2010-11-12 20:32:09

+0

在您的示例中,MyCompany.Biz.MyFirstApp.OrderProcessing.dll,MyCompany.Biz.CORE.OrderProcessing.dll和MyCompany.Biz.MySecondApp.OrderProcessing.dll将包含的某些内容的示例是什么。 – 2010-11-12 20:39:53