共用方式為


使用並存版本設定更新架構

您可以使用結構描述執行並行版本控制。 將新版本的架構新增至元件、升級架構的版本,同時讓現有的架構(及其版本)保持不變,即可這麼做。

如果您增加架構版本,則必須更新所有使用該版本的管線實例及元件的架構參考。 您還必須更新參考模式的映射(或創建新映射),以及所有依賴該模式的協調流程。

如果您取消部署架構,則舊版的架構(如果有的話)將會被啟用。

管線中的架構解析

如果您將包含與 BizTalk 群組中現有結構相同訊息類型的新結構的組件新增至應用程式,當管線中進行結構解析時,將會採用具有最新版本號的結構。 如果一個訊息類型參考多個 .NET 類型,這個模棱兩可可能會導致管線執行失敗。 這是因為架構查閱會使用訊息類型、目標命名空間和實例的根名稱。 任何使用與新架構具有相同訊息型別的架構的應用程式中的流程管道,都可能發生這種類型的失敗。 如需架構解析的詳細資訊,請參閱 BizTalk Server 說明中的 管線元件架構解析https://go.microsoft.com/fwlink/?LinkID=154207)。

XML 反組譯工具的架構解析行為可能需要在與舊版並存新增新版的架構之後進行其他變更。 在某些情況下,您可能會想要在管線設計工具中,將管線拆解器屬性中對特定版本架構的參考設定為硬編碼。 這可讓您避免動態解析行為,其中 XML 反組譯程式會使用從訊息 XML 內容動態探索到的訊息類型,判斷要載入的架構。

更新協調流程中的架構

當您在協調流程中變更與多個傳送和接收圖形相關聯的架構時,您可以將與每個傳送或接收圖形相關聯的訊息的 [訊息類型] 屬性設定為 [多部分訊息類型],而不是 [架構],讓變更變得更容易。 然後,您可以將與每個圖形相關聯的訊息部分的 Type 屬性設定為相同的架構。 如此一來,您便可以變更每個訊息元件的 Type 屬性來變更架構,而不必變更每個圖形的訊息類型。 如需藉由此過程讓變更更為容易的詳細資訊,請參閱 促進 BizTalk 程式設計的 8 個秘訣和訣竅白皮書 (https://go.microsoft.com/fwlink/?LinkId=101594)。

版本控制架構

BizTalk Server 會從包含它之元件的最新版本取得架構。 這表示,如果您建立新版本的架構,新版本會完全取代所有舊版的架構。 當交易時間短暫時,這很有效。 不過,商務程式管理解決方案中的交易會長期存在:訂單最多可能需要一年的時間才能完成。

為了允許使用多個架構版本的可能性,解決方案中的每個架構在其命名空間中包含版本號碼。 BizTalk 管線會根據目標命名空間以及架構中定義的根節點名稱,決定訊息的訊息類型。 例如,Order 架構的命名空間如下所示:

http://Microsoft.Samples.BizTalk.SouthridgeVideo.Schemas.Order.v1

因為命名空間會識別架構,而且包含版本號碼會使命名空間成為架構的唯一名稱,因此新架構會與較舊的版本不同。 因此,不需要取代舊的架構,就可以使用新的架構。

變更架構版本可能會影響解決方案的許多部分,因此應該事先規劃。 如需架構版本變更效果的詳細資訊,請參閱 BizTalk Server 說明中的 管線元件架構解析https://go.microsoft.com/fwlink/?LinkID=154207)。

變更協調流程中的架構版本時,請使用多部分訊息類型。 這樣做會導致版本設定架構時具有更大的彈性。 如需使用多部分訊息類型之優點的詳細資訊,請參閱 MSDN Magazine 文章 8 提示和技巧,以取得更佳 BizTalk 程式 設計 (https://go.microsoft.com/fwlink/?LinkId=101594) 的秘訣 #1、「一律使用多部分訊息類型」。

另請參閱

更新應用程式的最佳做法