映射阶段(可恢复的交换处理)

默认情况下,当交换一条消息在接收端口的映射阶段失败时,整个交换将挂起。 可以通过添加名为 BTS 的属性来更改此行为 。SuspendMessageOnMappingFailure 到消息上下文,并将上下文属性 True 的值从管道组件设置为 。 当此属性设置为 True时,终结点管理器会将映射期间失败的消息置于挂起队列中,并继续处理交换中的剩余消息。

以下代码将 SuspendMessageOnMappingFailure 属性的值设置为 True。

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