共用方式為


使用 WCF 配接器內容屬性設定動態傳送埠

您可以設定 WCF 配接器的動態傳送埠。 URI、動作和系結可能從傳入訊息的屬性判斷,然後在 表達式 圖形中指定,如下列 WCF-NetTcp 配接器所示:

MessageOut=MessageIn;  
MessageOut(WCF.Action)="http://tempuri.org/IReceiveMessage/ReceiveMessage";  
MessageOut(WCF.SecurityMode)="Transport";  
MessageOut(WCF.TransportClientCredentialType)="Windows";  
DynamicSendPort(Microsoft.XLANGs.BaseTypes.Address)="net.tcp://localhost:8001/netTcp";  
DynamicSendPort(Microsoft.XLANGs.BaseTypes.TransportType)="WCF-NetTcp";  

下列程式代碼示範如何在 WCF-Custom 配接器的 表示式 圖形中指定 WCF 內容屬性的範例:

MessageOut=MessageIn;  
MessageOut(WCF.BindingType)="customBinding";  
MessageOut(WCF.Action)="http://tempuri.org/IReceiveMessage/ReceiveMessage";  
MessageOut(WCF.BindingConfiguration)=@"<binding name=""customBinding""><binaryMessageEncoding /><tcpTransport /></binding>";  
DynamicSendPort(Microsoft.XLANGs.BaseTypes.Address)="net.tcp://localhost:8001/customNetTcp";  
DynamicSendPort(Microsoft.XLANGs.BaseTypes.TransportType)="WCF-Custom";  

指定 WCF 內容屬性時的考慮如下:

  • 有一些地址可以對應到多個配接器。 例如,以 http:// 或 https:// 開頭的位址可由 HTTP 配接器以及 WCF-BasicHttp、WCF-WsHttp 或 WCF-Custom 配接器來處理。 針對另一個範例,在上述範例程式代碼中,兩者都是使用位址開頭為 net.tcp://,但由於第二個範例程式代碼使用自定義系結,因此 WCF-Custom 配接器應該用來處理位址。 因此,若要識別正確的配接器,您必須在表達式圖形中,使用想要使用的配接器來設定可選的Microsoft.XLANGs.BaseTypes.TransportType字段。

    備註

    如果位址以 http:// 或 https:// 開頭,而且您預設未指定 Microsoft.XLANGs.BaseTypes.TransportType 字段,BizTalk 引擎將會使用 HTTP 配接器。

  • WCF。BindingType 會依名稱識別系結。 可以是下列其中一項:

    • basicHttpBinding(基本HTTP繫結)

    • 自定義綁定

    • netMsmqBinding

    • netNamedPipeBinding

    • netTcpBinding

    • wsFederationHttpBinding(WS 聯邦身份驗證 HTTP 綁定)

    • wsHttpBinding

      上述清單可以擴充。 例如,您可以將自己的綁定新增至其中,例如 FtpBinding。

  • WCF。BindingConfiguration 會指定系結類型的系結組態。 它會接受任何在計算機組態檔中註冊的系結。 它也會採用與 WCF 組態檔中系結組態所使用的相同格式的 XML 組態。

  • 您可能需要指定其他 WCF 屬性。 您可以在 [表達式編輯器] 中輸入 WCF ,而 IntelliSense 功能應該會列出所有可用的內容屬性。 如需 WCF 內容屬性的詳細資訊,請參閱 WCF 配接器屬性架構和屬性

    上述範例顯示如何使用單一動作配置 WCF.Action。 針對多個動作映射案例,WCF 配接器無法支援在動態傳送埠中使用多個動作映射。 在上面所示,您可以直接在 WCF.Action 內容屬性中設定實際的動作。

另請參閱

指定 WCF 傳送配接器的 SOAP 動作
如何使用表達式將值指派給動態埠
埠系結