管線會編譯並部署為解決方案建置和部署程式的一部分。 編譯程式會在每個元件上呼叫 Validate 方法,讓元件傳回所設定資訊的編譯錯誤。 建置之後,管線會在部署方案時,與解決方案的其餘部分一起部署在相同的元件中。
個別實例管線組態
個別實例管線組態可用來修改在傳送埠或接收位置層級部署管線內管線元件的屬性。 當每個實例僅需要修改少數管線元件屬性時,逐個實例的管線配置會非常有用。 例如,如果您需要在多個接收位置支援不同的訊息類型,並擁有單一自定義 XML 接收管線,每個實例管線組態可讓您部署管線並覆寫預設組態(包括指定不同的信封和檔規格名稱)。 BizTalk 管理控制台支援此機制,並透過 Explorer 物件模型以程式設計方式支援。
使用 BizTalk 管理控制台 Per-Instance 管線設定
您可以使用 BizTalk 管理控制台來執行個別實例管線設定。 部署自定義管線之後,請視需要建立多個接收位置或傳送埠。 然後,針對每個接收位置或傳送埠,透過 [設定管線] 對話框覆寫預設屬性值。 例如,若要指定不同的文件架構,請輸入 EnvelopeDocSpecNames 屬性的架構名稱。
警告
將不會執行接收位置或傳送埠中指定的組態值驗證。 如果設定不正確,訊息會在運行時間通過管線時失敗。
使用 Explorer 物件模型 Per-Instance 管線設定
讀取描述管線元件每個實例組態的 XML 檔案時,它會覆寫管線檔案中設定的屬性。
使用 BizTalk Explorer 物件模型來設定個別實例管線組態。 BizTalk Explorer 物件模型提供 IReceiveLocation 和 ISendPort 介面上的 ReceivePipelineData 屬性,以設定接收管線元件的元件的組態。 BizTalk Explorer 物件模型也會在 IReceivePort 和 ISendPort 介面上提供 SendPipelineData 方法,以設定傳送管線元件的元件的組態。
個別實例的管線配置不支援以下內容:
在管線內重新排列階段
新增或移除階段
在階段內重新排列元件
新增或移除元件
唯一支持的變更是在管線元件的設定中。 管線元件的個別實例組態會覆寫常見的管線元件組態。 如果未在個別實例管線組態中指定元件的參數,則會使用該參數的通用組態(如管線設計工具中所設定)。
以下是每個實例組態數據的範例。
<?xml version="1.0" encoding="utf-16"?>
<Root xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Stages>
<Stage CategoryId="9d0e4103-4cce-4536-83fa-4a5040674ad6">
<Components>
<Component Name=Microsoft Microsoft.BizTalk.Component.MIME_SMIME_Decoder>
<Properties>
<AllowNonMIMEMessage vt=11>true</AllowNonMIMEMessage>
</Properties>
</Component>
</Components>
</Stage>
<Stage CategoryId="9d0e4105-4cce-4536-83fa-4a5040674ad6">
<Components>
<Component Name=Microsoft.BizTalk.Component.XmlDasmComp>
<Properties>
<EnvelopeSpecNames vt=8>MySchemas.EnvelopeSpecNames</EnvelopeSpecNames>
<AllowUnrecognizedMessage vt=11>false</AllowUnrecognizedMessage>
</Properties>
</Component>
</Components>
</Stage>
<Stage CategoryId="9d0e410d-4cce-4536-83fa-4a5040674ad6" ExecutionSequence="2">
<Components>
<Component Name=Microsoft.BizTalk.Component.XmlValidator >
<Properties>
<DocumentSpecName vt=8>MySchemas.DocspecName</DocumentSpecName>
</Properties>
</Component>
</Components>
</Stage>
</Stages>
</Root>