Compartir a través de


Asignación de fase (procesamiento de intercambio recuperable)

De forma predeterminada, cuando un mensaje de un intercambio falla en la fase de asignación de un puerto de recepción, se suspende todo el intercambio. Puede cambiar este comportamiento agregando una propiedad denominada BTS. SuspendMessageOnMappingFailure en el contexto del mensaje y estableciendo el valor de la propiedad context en True desde un componente de canalización. Cuando esta propiedad se establece Trueen , el administrador de puntos finales coloca el mensaje que produjo un error durante la asignación en la cola suspendida y continúa procesando los mensajes restantes en el intercambio.

El código siguiente establece el valor de la propiedad SuspendMessageOnMappingFailure en True.

  
public IBaseMessage Execute(IPipelineContext pc, IBaseMessage inmsg)  
{  
    bool bSuspend = true;  
    inmsg.Context.Write("SuspendMessageOnMappingFailure", "http://schemas.microsoft.com/BizTalk/2003/system-properties", bSuspend);   
    …  
}