Condividi tramite


Specifica di azioni SOAP per adapter di trasmissione WCF

È possibile impostare WCF. Proprietà del contesto di azione nella finestra di dialogo Proprietà trasporto adattatore di trasmissione WCF o nelle forme dell'espressione di orchestrazione. Se si imposta WCF. Proprietà contesto azione nell'orchestrazione, è necessario lasciare vuoto il campo Azione nella finestra di dialogo Proprietà trasporto adattatore WCF per le porte di invio statiche. Se si specifica anche un'azione nelle porte di invio statiche, WCF. La proprietà contesto azione impostata nell'orchestrazione verrà sostituita.

Esistono inoltre due modi per specificare questa proprietà: il formato di azione singolo e il formato di mapping delle azioni. Se si imposta questa proprietà nel formato di azione singola, ad esempio, http://MyService/IMyContract/MyAction1l'azione SOAP nella finestra di dialogo Proprietà trasporto adattatore di trasmissione WCF per i messaggi in uscita viene sempre impostata sul valore specificato in questa proprietà. In alternativa, è possibile impostare il formato dell'azione singola nella forma espressione di orchestrazione. Ad esempio,

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

Se si imposta questa proprietà nel formato di mapping delle azioni, l'azione SOAP in uscita viene determinata da BTS. Proprietà contesto operazione . Ad esempio, se questa proprietà è impostata sul formato XML seguente nella finestra di dialogo Proprietà trasporto adattatore di trasmissione WCF e BTS. La proprietà Operation è impostata su Operation_1 nella porta di invio nell'orchestrazione, l'adapter di invio WCF usa http://MyService/IMyContract/MyAction1 per l'azione SOAP in uscita.

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>  

Specifica del mapping delle azioni per WCF. L'azione in una forma di espressione non è supportata. Tale mapping deve essere specificato nella finestra di dialogo delle proprietà di trasporto WCF. L'adattatore WCF cercherà quindi l'azione SOAP usando BTS. Proprietà contesto operazione , che l'orchestrazione imposta sul nome dell'operazione sulla porta in cui viene inviato il messaggio.

Se i messaggi in uscita vengono indirizzati con il routing basato sul contenuto (CBR) in cui la http://schemas.microsoft.com/BizTalk/2003/system-properties#Operation proprietà non è impostata, gli adapter di invio WCF impostano l'intera stringa di mapping delle azioni sull'azione dei messaggi WCF in uscita. Per ovviare al problema, è possibile effettuare una delle seguenti operazioni:

  • Impostare il campo azione sulla porta di invio su http://MyService/IMyContract/MyAction1.

  • Impostare BTS. Proprietà del contesto dell'operazione in una pipeline. Ad esempio, impostare il valore di http://schemas.microsoft.com/BizTalk/2003/system-properties#Operation su Operation1.

  • Lasciare vuoto il campo dell'azione e utilizzare l'azione del messaggio in arrivo.

    È inoltre possibile eseguire l'Utilizzo guidato servizio WCF BizTalk per utilizzare i servizi WCF con la singola azione o il mapping di azioni. Per altre informazioni, vedere Come usare il servizio WCF BizTalk che usa la procedura guidata per l'utilizzo di un servizio WCF.

Vedere anche

Configurazione di porte di trasmissione dinamiche mediante proprietà di contesto degli adapter WCF