Phase de mappage (traitement des échanges récupérables)
Par défaut, l'échec d'un message dans un échange lors de la phase de mappage d'un port de réception entraîne l'interruption de l'échange entier. Vous pouvez modifier ce comportement en ajoutant une propriété nommée BTS. SuspendMessageOnMappingFailure au contexte de message et en définissant la valeur de la propriété de contexte sur à True
partir d’un composant de pipeline. Lorsque cette propriété est définie sur True
, le gestionnaire de points de terminaison place le message qui a échoué pendant le mappage dans la file d’attente suspendue et continue de traiter les messages restants dans l’échange.
Le code suivant définit la valeur de la propriété SuspendMessageOnMappingFailure sur True.
public IBaseMessage Execute(IPipelineContext pc, IBaseMessage inmsg)
{
bool bSuspend = true;
inmsg.Context.Write("SuspendMessageOnMappingFailure", "http://schemas.microsoft.com/BizTalk/2003/system-properties", bSuspend);
…
}