映射阶段(可恢复的交换处理)
默认情况下,当交换一条消息在接收端口的映射阶段失败时,整个交换将挂起。 可以通过添加名为 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);
…
}