2010-11-09 124 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