Teilen über


Angeben von SOAP-Aktionen für WCF-Sendeadapter

Sie können den WCF festlegen. Aktionskontexteigenschaft im Dialogfeld WCF-Sendeadapter-Transporteigenschaften oder in den Orchestrierungsausdruck-Shapes . Wenn Sie wcf festlegen . Aktionskontexteigenschaft in der Orchestrierung. Sie müssen das Feld Aktion im Dialogfeld WCF-Adaptertransporteigenschaften für die statischen Sendeports leer lassen. Wenn Sie auch eine Aktion in den statischen Sendeports angeben, wird wcf verwendet. Die Aktionskontexteigenschaft , die Sie in der Orchestrierung festgelegt haben, wird überschrieben.

Darüber hinaus gibt es zwei Möglichkeiten, diese Eigenschaft anzugeben: das einzelne Aktionsformat und das Aktionszuordnungsformat. Wenn Sie diese Eigenschaft im Einzelaktionsformat festlegen, z. B. , http://MyService/IMyContract/MyAction1wird die SOAP-Aktion im Dialogfeld "Transporteigenschaften des WCF-Sendeadapters" für ausgehende Nachrichten immer auf den in dieser Eigenschaft angegebenen Wert festgelegt. Alternativ können Sie das einzelne Aktionsformat im Orchestrierungsausdruck-Shape festlegen. Beispiel:

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

Wenn Sie diese Eigenschaft im Aktionszuordnungsformat festlegen, wird die ausgehende SOAP-Aktion vom BTS bestimmt. Vorgangskontexteigenschaft . Beispielsweise, wenn diese Eigenschaft im Dialogfeld WCF-Sendeadapter-Transporteigenschaften und im BTS auf das folgende XML-Format festgelegt ist . Die Operation-Eigenschaft ist auf Operation_1 im Sendeport in der Orchestrierung festgelegt, den der WCF-Sendeadapter für die ausgehende SOAP-Aktion verwendet 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>  

Angeben der Aktionszuordnung für WCF. Aktionen in einem Ausdrucks-Shape werden nicht unterstützt. Sie müssen die Aktionszuordnung im Dialogfeld für die WCF-Transporteigenschaften angeben. Anschließend sucht der WCF-Adapter die SOAP-Aktion mithilfe des BTS. Vorgangskontexteigenschaft , die von der Orchestrierung auf den Namen des Vorgangs am Port festgelegt wird, an den die Nachricht gesendet wird.

Wenn ausgehende Nachrichten mit inhaltsbasiertem Routing (Content-Based Routing, CBR) weitergeleitet werden, wobei die http://schemas.microsoft.com/BizTalk/2003/system-properties#Operation Eigenschaft nicht festgelegt ist, legen WCF-Sendeadapter die gesamte Aktionszuordnungszeichenfolge auf die Aktion der ausgehenden WCF-Nachrichten fest. Zur Umgehung dieses Problems können Sie eine der folgenden Aktionen ausführen:

  • Legen Sie das Aktionsfeld für den Sendeport auf fest http://MyService/IMyContract/MyAction1.

  • Legen Sie den BTS fest. Vorgangskontexteigenschaft in einer Pipeline. Legen Sie beispielsweise den Wert von http://schemas.microsoft.com/BizTalk/2003/system-properties#Operation auf Operation1 fest.

  • Lassen Sie das Aktionsfeld leer, und verwenden Sie stattdessen die Aktion aus der eingehenden Nachricht.

    Sie können auch den Verarbeitungs-Assistenten für BizTalk WCF-Dienste verwenden, um die WCF-Dienste mit Einzelaktion oder Aktionszuordnung auszuführen. Weitere Informationen finden Sie unter Verwenden des BizTalk WCF-Dienstnutzungs-Assistenten zum Verwenden eines WCF-Diensts.

Weitere Informationen

Konfigurieren dynamischer Sendeports mit WCF-Adapter-Kontexteigenschaften