Compartir a través de


Cómo usar puertos de enlace directo de cuadro de mensajes

Los puertos de enlace directo de cuadro de mensajes permiten entregar mensajes directamente en la base de datos de cuadro de mensajes sin que exista un destinatario explícito, así como suscribirse a los mensajes que cumplan determinados criterios, en lugar de a los que procedan de un remitente concreto.

El envío de un mensaje en un puerto enlazado directo de Cuadro de mensajes equivale a publicar el mensaje en un bus de mensajes, en este caso, en la base de datos messageBox. Puede haber cualquier número de suscriptores para cualquier mensaje publicado. Además, si no hay suscriptores interesados en el mensaje en el momento de publicarlo, se produce una excepción de suscripción no encontrada. Si envía un mensaje a través de un puerto enlazado directo de Cuadro de mensajes con un destinatario determinado en mente, es posible que desee establecer propiedades en valores concretos en la forma Asignación de mensajes para que el suscriptor deseado busque. Puede establecer las propiedades de acuerdo con las definiciones de propiedades predefinidas de BizTalk Server o con sus propias definiciones de propiedades. Por ejemplo:

myMessage(PropertyNamespace.PropertyName) = "My Property")

Recibir un mensaje a través de un puerto de enlace directo de cuadro de mensajes equivale a suscribirse a un bus de mensajes con criterios de filtro. Los destinatarios del mensaje pueden ser cualquier tipo de servicio capaz de suscribirse a mensajes, lo que incluye las orquestaciones y los puertos de envío. Para una forma de activación Recibir , la suscripción es el tipo de mensaje y la expresión de filtro, y para una forma De recepción no activa la suscripción es el tipo de mensaje y el conjunto de correlación. Cada forma De recepción siempre incluye el tipo de mensaje como parte de su suscripción.

Nota

Debe usar una expresión de filtro si tiene una forma Receive activando que recibe un mensaje de tipo System.Xml. XmlDocument o Microsoft.XLANGs.BaseTypes.Any en un puerto enlazado directo con enrutamiento definido por la suscripción.

Si no especificó ningún criterio de filtro en la forma De recepción activada conectada a un puerto enlazado directo del Cuadro de mensajes, la suscripción tendrá un aspecto similar al siguiente:

http://schemas.microsoft.com/BizTalk/2003/system-properties.ReceivePortID == {2F6A80E1-2518-4A69-9C28-401C2DB1CBF6} And
http://schemas.microsoft.com/BizTalk/2003/system-properties.MessageType == http://MyMessageType

En el ejemplo anterior, el puerto de recepción de enlace directo de cuadro de mensajes recibirá todos los mensajes que coincidan con el tipo de mensaje para el que se ha configurado la operación del puerto.

Nota

Cuando se usan puertos de recepción de enlace directo de cuadro de mensajes, los filtros deben ser lo más específicos que sea posible. Si el filtro no es lo bastante específico, la orquestación podría recibir mensajes no deseados.

Para configurar un puerto enlazado directo de Cuadro de mensajes, seleccione Enrutamiento entre puertos que se definirán mediante expresiones de filtro en los mensajes entrantes de la base de datos cuadro de mensajes en el Asistente para configuración de puertos.

Para obtener un ejemplo de cómo usar puertos enlazados directos de Cuadro de mensajes, vea el ejemplo del SDK "Enlace directo a la base de datos de cuadro de mensajes en orquestaciones" en https://go.microsoft.com/fwlink/?LinkId=73703.

Consulte también

Cómo usar Self-Correlating puertos enlazados directoscómo usar puertos enlazados directos de orquestación de asociados