次の方法で共有


WCF 送信アダプターの SOAP アクションの指定

WCF 送信アダプターのトランスポート プロパティ ダイアログ ボックスまたはオーケストレーションの図形でWCF.Actionコンテキスト プロパティを設定できます。 オーケストレーションでWCF.Action コンテキスト プロパティを設定した場合、静的送信ポートの [WCF アダプター トランスポート プロパティ] ダイアログ ボックスの [アクション] フィールドを空白のままにする必要があります。 静的送信ポートでアクションを指定した場合、オーケストレーションで設定した WCF.Action コンテキスト プロパティは上書きされます。

さらに、このプロパティを指定するには、単一アクション形式とアクション マッピング形式の 2 つの方法があります。 このプロパティを単一のアクション形式 ( http://MyService/IMyContract/MyAction1 など) で設定した場合、送信メッセージの WCF 送信アダプター トランスポート プロパティ ダイアログ ボックスの SOAP アクションは、常にこのプロパティで指定された値に設定されます。 または、オーケストレーション 図形で単一アクション形式を設定することもできます。 たとえば、

OutboundMessage(WCF.Action)="http://MyService/IMyContract/MyAction1";  

アクション マッピング形式でこのプロパティを設定した場合、送信される SOAP アクションは BTS.Operation コンテキスト プロパティによって決定されます。 たとえば、WCF 送信アダプタートランスポートプロパティダイアログボックスでこのプロパティが次の XML 形式に設定され、オーケストレーションの送信ポートで BTS.Operation プロパティが Operation_1 に設定されている場合、WCF 送信アダプターは送信 SOAP アクションに http://MyService/IMyContract/MyAction1 を使用します。

BtsActionMapping xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">  
<Operation Name="Operation_1" Action="http://MyService/IMyContract/MyAction1" />  
<Operation Name="Operation_2" Action="http://MyService/IMyContract/MyAction2" />  
<Operation Name="Operation_3" Action="http://MyService/IMyContract/MyAction3" />  
</BtsActionMapping>  

図形でWCF.Actionのアクションマッピングを指定することはサポートされていません。 [WCF トランスポートのプロパティ] ダイアログ ボックスでアクション マッピングを指定する必要があります。 その後、WCF アダプターは、メッセージが送信されるポートの操作名にオーケストレーションが設定する BTS.Operation コンテキスト プロパティを使用して SOAP アクションを検索します。

http://schemas.microsoft.com/BizTalk/2003/system-properties#Operation プロパティが設定されていないコンテンツ ベースのルーティング (CBR) を使用して送信メッセージがルーティングされる場合、WCF 送信アダプターは、アクション マッピング文字列全体を送信 WCF メッセージのアクションに設定します。 これを回避するには、次のいずれかの操作を行います。

  • 送信ポートのアクション フィールドを http://MyService/IMyContract/MyAction1 に設定します。

  • パイプラインで BTS.Operation コンテキストプロパティを設定します。 たとえば、 http://schemas.microsoft.com/BizTalk/2003/system-properties#Operation の値を Operation1 に設定します。

  • アクション フィールドは空白のままにし、代わりに受信メッセージからのアクションを使用します。

    BizTalk WCF サービス使用ウィザードを使用して、単一のアクションまたはアクション マッピングで WCF サービスを使用することもできます。 詳細については、「 BizTalk WCF サービス使用ウィザードを使用して WCF サービスを使用する方法」を参照してください。

こちらもご覧ください

WCF アダプター コンテキスト プロパティを使用した動的送信ポートの構成