开发探测管道组件

任何必须支持消息探测功能的管道组件(常规、装配或拆解)都可以实现 IProbeMessage 接口。 探测组件用于具有 FirstMatch 执行模式的管道阶段。 在此类阶段,BizTalk 消息引擎向组件提供消息的开头部分,以确定该组件是否识别消息的格式。 如果组件识别格式,则会向组件提供整个消息进行处理。

IProbeMessage 接口公开单个方法 Probe,使组件能够检查消息的开头部分。 返回值确定是否运行此组件。 以下步骤概述了 BizTalk 消息引擎如何运行需要识别的阶段:

  1. 如果阶段不包含任何组件,则阶段不会运行,并将消息提供给后续阶段进行处理。

  2. 检查组件是否实现 IProbeMessage 接口。 如果没有,消息传送引擎将调用该组件。 阶段处理已完成,并将消息提供给下一阶段。

  3. 调用 Probe 方法。 如果返回值为 True,则运行组件。 然后完成阶段处理,并将消息提供给下一阶段。

  4. 消息传送引擎获取阶段中的下一个组件。 如果没有更多组件且未运行任何组件,则会生成管道处理失败的错误。 如果没有更多组件并且至少运行了一个组件,则完成处理。

    如果阶段不需要识别(例如,执行模式为 All),消息传送引擎将调用组件,而无需先查询 IProbeMessage 接口并调用 Probe 方法。

另请参阅

开发常规管道组件
开发装配管道组件
开发拆解管线组件
管道组件错误报告
配置本机管道组件
部署管道组件