Condividi tramite


Come utilizzare porte con binding diretto orchestrazioni partner

Le porte con binding diretto orchestrazioni partner consentono le comunicazioni tra orchestrazioni tramite porte. È possibile creare due modelli di comunicazione: associazione diretta dell'orchestrazione diretta dei partner e associazione diretta dell'orchestrazione partner inversa. Questi due modelli consentono la comunicazione tra orchestrazioni esplicita, il che significa che vi è un'orchestrazione di destinatari previsti quando si utilizza il binding diretto di orchestrazione partner di inoltro e un'orchestrazione di mittenti previsti quando si utilizza il binding diretto di orchestrazione partner inverso.

È anche possibile progettare il binding diretto di orchestrazione partner implicito attenendosi a una delle seguenti procedure:

  • Rendere il destinatario una porta con binding diretto MessageBox e creare un filtro che accetti messaggi da una determinata orchestrazione di trasmissione.

  • Rendere il mittente una porta con binding diretto MessageBox e innalzare di livello le proprietà corrispondenti a una sottoscrizione nell'orchestrazione di ricezione.

    Per configurare una porta diretta di orchestrazione partner, nella Configurazione guidata porta specificare Direct for Port binding e selezionare Per ricevere messaggi da altre orchestrazioni, selezionare questa porta qui e in taliorchestrazioni o Per inviare messaggi ad altre orchestrazioni, selezionare questa porta qui e in tali orchestrazioni a seconda che si ricevano o invii messaggi su questa porta. Selezionare quindi la porta dall'elenco a discesa Porta nell'elenco a discesa Orchestrazione partner . Il tipo di porta per entrambe le porte deve essere lo stesso, il che implica che anche il tipo di messaggio sia uguale. Inoltre, per poter indirizzare l'associazione a una porta di orchestrazione partner, il modificatore di tipo del tipo di porta deve essere Interno per le orchestrazioni all'interno dello stesso assembly o Pubblico per consentire un'orchestrazione da un altro assembly per associarlo. Le polarità delle porte devono essere opposte. Ad esempio, se un lato è una porta di trasmissione, l'altro lato deve essere una porta di ricezione.

    Per un esempio di come usare le porte associate dirette all'orchestrazione partner, vedere l'esempio di SDK "Associazione diretta a un'orchestrazione" in https://go.microsoft.com/fwlink/?LinkId=73703.

Binding diretto di orchestrazioni partner di inoltro

Si tratta del modello di comunicazione tipico utilizzato per il binding diretto di orchestrazioni partner di inoltro. Questo tipo di binding di orchestrazioni partner di inoltro consente di avere più mittenti associati allo stesso destinatario.

Per configurare il binding diretto di orchestrazione partner di inoltro, attenersi alla seguente procedura:

  1. In Orchestrazione A selezionare la forma Porta nella casella degli strumenti di orchestrazione. Verrà avviata la Configurazione guidata porta.

  2. Nella pagina Proprietà porta digitare nel campo MyReceivePortNome . Fare clic su Avanti.

  3. Nella pagina Seleziona tipo di porta selezionareCrea un nuovo tipo di porta. Nel campo Nome tipo di porta digitare MyPartnerPortType. Fare clic su Avanti.

  4. Nell'elenco a discesa Porta associazione porta dell'elenco a discesa Porta della comunicazione selezionare Riceverò sempre i messaggi sulla porta. Nell'elenco a discesa Associazione porta selezionare Direct.

  5. Selezionare Per ricevere messaggi da altre orchestrazioni, selezionare questa porta qui e in tali orchestrazioni e quindi nell'elenco a discesa Porta nell'elenco a discesa OrchestrationA.MyReceivePort. Fare clic su Avanti.

  6. Nella pagina Completamento guidata porta fare clic su Fine.

  7. In Orchestrazione B selezionare la forma Porta nella casella degli strumenti di orchestrazione. Verrà avviata la Configurazione guidata porta.

  8. Nella pagina Proprietà porta digitare nel campo MySendPortNome . Fare clic su Avanti.

  9. Nella pagina Selezionare un tipo porta selezionare Utilizza un tipo porta esistente. In Tipi di porta disponibili selezionare MyPartnerPortType e quindi fare clic su Avanti.

  10. Nell'elenco a discesa Porta associazione porta dell'elenco a discesa Porta della comunicazione selezionare Invia sempre messaggi su questa porta. Nell'elenco a discesa Associazione porta selezionare Direct.

  11. Selezionare Per inviare messaggi ad altre orchestrazioni, selezionare questa porta qui e in tali orchestrazioni e quindi nell'elenco a discesa Porta nell'elenco a discesa OrchestrationA.MyReceivePort. Fare clic su Avanti.

  12. Nella pagina Completamento guidata porta fare clic su Fine.

    Nota

    Vi è un forte binding dall'orchestrazione di trasmissione all'orchestrazione di ricezione. Di conseguenza, se si desidera modificare l'orchestrazione di ricezione o modificarne la versione sarà necessario aggiornare la configurazione della fase di progettazione della porta con binding diretto di orchestrazioni partner di trasmissione. Tuttavia, dal momento che l'orchestrazione di ricezione non ha una conoscenza esplicita dell'orchestrazione di trasmissione, è possibile aggiornare l'orchestrazione di trasmissione senza influire negativamente sull'orchestrazione di ricezione.

    Nell'orchestrazione precedente, Orchestrazione A è il destinatario e Orchestrazione B il mittente. La configurazione consente a Orchestration B di inviare messaggi a OrchestrationA.MyReceivePort e consente a Orchestration A di ricevere tutti i messaggi inviati a OrchestrationA.MyReceivePort. Inoltre, è possibile aggiungere Orchestrazione C in modo che sia il secondo mittente e aggiungere Orchestrazione D in modo che sia il terzo mittente utilizzando la stessa configurazione dell'Orchestrazione B.

Binding diretto di orchestrazioni partner inverso

Non si tratta del modello di comunicazione tipico utilizzato per il binding diretto di orchestrazioni partner. In questo modello la direzione del binding è inversa alla direzione della comunicazione. Questo tipo di binding di orchestrazioni partner inverso consente di avere un unico mittente che comunica con più destinatari.

Nota

Se si utilizza un tipo di porta bidirezionale con binding diretto di orchestrazioni partner inverso, sarà necessario configurare i filtri di ricezione per assicurare che solo uno dei destinatari utilizzi il messaggio. Ciò in quanto per una porta di sollecitazione-risposta è prevista un'unica risposta. Se più destinatari ottengono il messaggio, la porta di sollecitazione-risposta accetterà la prima risposta e tutte quelle successive verranno sospese e non saranno ripristinabili. Il motore di messaggistica genera un'eccezione quando si tenta di inviare il messaggio in uno scenario simile e indica che vi sono più destinatari per una porta di sollecitazione-risposta.

Per configurare il binding diretto di orchestrazione partner inverso, attenersi alla seguente procedura:

  1. In Orchestrazione A selezionare la forma Porta nella casella degli strumenti di orchestrazione. Verrà avviata la Configurazione guidata porta.

  2. Nella pagina Proprietà porta digitare nel campo MySendPortNome . Fare clic su Avanti.

  3. Nella pagina Seleziona tipo di porta selezionareCrea un nuovo tipo di porta. Nel campo Nome tipo di porta digitare MyPartnerPortType. Fare clic su Avanti.

  4. Nell'elenco a discesa Porta associazione porta dell'elenco a discesa Porta della comunicazione selezionare Invia sempre messaggi su questa porta. Nell'elenco a discesa Associazione porta selezionare Direct.

  5. Selezionare Per inviare messaggi ad altre orchestrazioni, selezionare questa porta qui e in tali orchestrazioni e quindi nell'elenco a discesa Porta nell'elenco a discesa OrchestrationA.MySendPort. Fare clic su Avanti.

  6. Nella pagina Completamento guidata porta fare clic su Fine.

  7. In Orchestrazione B selezionare la forma Porta nella casella degli strumenti di orchestrazione. Verrà avviata la Configurazione guidata porta.

  8. Nella pagina Proprietà porta immettere nel campo MyReceivePortNome . Fare clic su Avanti.

  9. Nella pagina Selezionare un tipo porta selezionare Utilizza un tipo porta esistente. In Tipi di porta disponibili selezionare MyPartnerPortType e quindi fare clic su Avanti.

  10. Nell'elenco a discesa Porta associazione porta dell'elenco a discesa Porta della comunicazione selezionare Riceverò sempre i messaggi sulla porta. Nell'elenco a discesa Associazione porta selezionare Direct.

  11. Selezionare Per ricevere messaggi da altre orchestrazioni, selezionare questa porta qui e in tali orchestrazioni e quindi nell'elenco a discesa Porta nell'elenco a discesa OrchestrationA.MySendPort. Fare clic su Avanti.

  12. Nella pagina Completamento guidata porta fare clic su Fine.

    Nota

    L'orchestrazione di ricezione è associata in modo forte all'orchestrazione di trasmissione. Di conseguenza, se si desidera modificare l'orchestrazione di ricezione o aggiornarne la versione sarà necessario aggiornare la configurazione della porta del mittente. L'orchestrazione di trasmissione non ha una conoscenza esplicita dell'orchestrazione di ricezione, di conseguenza è possibile aggiornare l'orchestrazione di ricezione senza influire negativamente sull'orchestrazione di trasmissione.

    Nell'orchestrazione precedente, Orchestrazione A è il mittente e Orchestrazione B il destinatario. La configurazione consente a Orchestration A di inviare messaggi a Orchestration B tramite OrchestrationA.MySendPort e consente a Orchestration B di ricevere messaggi da OrchestrationA.MySendPort. Inoltre, è possibile aggiungere Orchestrazione C in modo che sia il secondo destinatario e aggiungere Orchestrazione D in modo che sia il terzo destinatario utilizzando la stessa configurazione dell'Orchestrazione B.

Vedere anche

Come usare porte associate a MessageBox Comeusare Self-Correlating porte associate dirette