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://」で始まるアドレスを使用していますが、2 番目のサンプル コードではカスタム バインドを使用するので、アドレスの処理には、WCF-Custom アダプタを使用する必要があります。 したがって、正しいアダプターを識別するには、式図形のオプションの Microsoft.XLANGs.BaseTypes.TransportType フィールドを、使用するアダプターと共に構成する必要があります。
Note
アドレスが http:// または https:// で始まり、 Microsoft.XLANGs.BaseTypes.TransportType フィールドを指定しない場合、既定では、BizTalk エンジンは HTTP アダプターを使用します。
WCF。BindingType は、名前でバインドを識別します。 次のいずれかを指定できます。
basicHttpBinding
customBinding
netMsmqBinding
netNamedPipeBinding
netTcpBinding
wsFederationHttpBinding
wsHttpBinding
上の一覧は、拡張できます。 たとえば、FtpBinding などの独自のバインドを一覧に追加できます。
WCF。BindingConfiguration は、バインドの種類のバインド構成を指定します。 このプロパティは、コンピュータの構成ファイルに登録されているバインドを受け取ります。 WCF 構成ファイルのバインド構成で使用される形式と同じ形式の XML 構成ファイルも受け取ります。
追加の WCF プロパティの指定が必要になる場合があります。 式エディターで 「WCF 」と入力すると、IntelliSense 機能に使用可能なすべてのコンテキスト プロパティが一覧表示されます。 WCF コンテキスト プロパティの詳細については、「 WCF アダプター プロパティ スキーマ」および「プロパティ」を参照してください。
上記の例では、WCF を構成する方法を示します 。 1 つのアクションを含むアクション。 複数アクションのマッピング シナリオの場合、WCF アダプタは、動的送信ポートでの複数アクションのマッピングの使用をサポートしていません。 WCF で実際のアクションを設定できます 。 上に示すように、アクション コンテキスト プロパティ。