Condividi tramite


Come configurare la forma Trasmissione

Immagine che rappresenta la forma Send.
Forma Trasmissione

Se si prevede di ricevere una risposta indiretta o asincrona (non utilizzando una porta richiesta-risposta) al messaggio trasmesso in precedenza, sarà necessario correlare il messaggio con l'istanza attualmente in esecuzione dell'orchestrazione, in modo che chi risponde possa ottenere la risposta all'istanza corretta. È possibile applicare un set di correlazione seguente alla forma Invia per una correlazione inizializzata in precedenza oppure applicare un set di correlazioni di inizializzazione. Per altre informazioni, vedere Uso delle correlazioni nelle orchestrazioni.

Per configurare una forma Trasmissione

  1. Impostare un'operazione porta e di messaggio.

    1. Nella finestra Visualizzazione orchestrazione verificare che l'orchestrazione abbia sia un'operazione porta che un'operazione di messaggio definita per il tipo di messaggio multiparte inviato.

    2. Nella Finestra Proprietà selezionare il messaggio da inviare dall'elenco a discesa Proprietà messaggio.

    3. Nella Finestra Proprietà selezionare l'operazione di porta che invia il messaggio dall'elenco a discesa Operazione porta.

      Oppure

      Trascinare il connettore di invio dalla forma Invia al socket della porta che invia il messaggio.

  2. Specificare i set di correlazione per limitare i messaggi che la forma Invia invierà o inizializzerà i valori in un set di correlazioni.

    1. Per ogni set di correlazione da usare, controllare un set di correlazione dall'elenco a discesa nella proprietà Set di correlazioni seguenti .

    2. Per ogni set di correlazione che si desidera inizializzare, controllare un set di correlazione dall'elenco a discesa nella proprietà Initializing Correlation Sets .For each correlation set that you want to initialize, check a correlation set from the drop-down on the Initializing Correlation Sets property.

Notifica di recapito

Per testare se un messaggio è stato inviato correttamente tramite una porta di trasmissione, attenersi alal seguente procedura:

  1. Inserire la forma Trasmissione in un ambito non transazionale, ad esecuzione prolungata o atomica.

  2. Sulla porta di trasmissione impostare la proprietà DeliveryNotification su Trasmissione.

  3. Aggiungere un gestore catch al proprio ambito per gestire una proprietà DeliveryFailureException.

    Nota

    Se la forma Send è contenuta all'interno di un ambito atomico, l'eccezione DeliveryFailureException può comunque essere intercettata, ma richiederà l'aggiunta di una forma ambito esterno con un tipo di transazione impostato su Long Running o None. Gli ambiti atomici non sono in grado di intercettare direttamente le eccezioni.

    L'orchestrazione attende il riconoscimento al termine dell'ambito non atomico che la contiene.

Nota

Ciò è valido solo in operazioni unidirezionali. Gli errori durante operazioni bidirezionali (richiesta-risposta) generano un riconoscimento negativo (SoapException) anche senza l'impostazione dell'attributo della porta.

Nota

La notifica di recapito non è supportata per il binding diretto.

Vedere anche

Gestione degli errori