Compartir a través de


Cómo usar puertos de enlace directo de autocorrelación

Los puertos de enlace directo de autocorrelación hacen referencia a sí mismos. Esto significa que un puerto de enlace directo de autocorrelación suministra la información que puede utilizar una orquestación para devolver mensajes a su orquestación envolvente. Al utilizar el enlace directo de autocorrelación, el motor de orquestaciones generará un token de correlación en los mensajes que sean específicos de la instancia de orquestación. Esto ofrece la capacidad de devolver los mensajes a una instancia de orquestación específica sin usar un conjunto de correlaciones.

Por ejemplo, puede crear un puerto enlazado directo autoconlactante de recepción en Orquestación A especificando Direct for Port binding (Enlace directo para puerto) y seleccionando Self Correlating (Correlación automática) en el Asistente para configuración de puertos. A continuación, en la orquestación B, declara un puerto como parámetro de orquestación de puerto de envío del mismo tipo de puerto que se ha definido en la orquestación A. Para ello, haga lo siguiente:

  1. En la ventana Vista de orquestación, haga clic con el botón derecho en Parámetros de orquestación y, a continuación, haga clic en Nuevo parámetro de puerto.

  2. En el ventana Propiedades, en Dirección de comunicación, seleccione Enviar y, en Tipo de puerto, seleccione el mismo tipo de puerto que se define en Orchestration A.

    Esta declaración crea un puerto de envío lógico en la Superficie para el puerto del Diseñador de orquestaciones. Orchestration A llama a Orchestration B mediante la forma Start Orchestration y pasa el nuevo puerto como parámetro, junto con los demás parámetros de orquestación, a Orchestration B. Orchestration B, realiza su lógica de negocios y envía un mensaje en el nuevo puerto que se le pasó. El mensaje se envía al puerto de enlace directo de autocorrelación de recepción de la instancia de la orquestación A que inició la orquestación B.

    Aunque la secuencia anterior de eventos también se puede realizar con una forma de orquestación de llamadas, solo tiene sentido cuando se usa una forma de orquestación de inicio . Esto se debe a que cuando se usa una forma de orquestación de llamadas, los puertos se pasan por referencia. La polaridad del puerto debe ser igual en ambas orquestaciones. Por lo tanto, la dirección de comunicación del puerto que pase desde una orquestación debe ser la misma que la dirección de la referencia de puerto en la orquestación a la que se llama. Sin embargo, cuando se usa la forma Start Orchestration , se genera una instancia asincrónica de una orquestación y no puede tener parámetros Out o Ref ; Por lo tanto, el puerto enlazado directo que se correlaciona automáticamente proporciona una manera de que una orquestación responda de nuevo a la instancia de orquestación que la creó.

    Para obtener un ejemplo de cómo usar puertos enlazados directos que se correlacionan automáticamente, consulte el ejemplo del SDK "Implementación de un patrón de dispersión y recopilación" en https://go.microsoft.com/fwlink/?LinkId=73703.

Consulte también

Cómo usar puertos enlazados directos de Cuadro de mensajes Cómo usar puertos enlazados directos de orquestación de asociados