实例化和初始化接收适配器

在接收适配器实例化后,消息引擎会立即对其进行初始化,引擎将调用适用于 IBTTransportControl 的 QueryInteraface。 然后调用 IBTTransportControl。初始化 传入适配器的传输代理,适配器保留在成员变量中。 接下来,引擎调用 QueryInterface for IPersistPropertyBag。 这是一个可选接口;如果适配器实现它,则处理程序配置将在 Load 方法调用中传递给适配器。 初始化接收适配器的最后一个阶段涉及将终结点配置传递给适配器。 在此阶段,引擎为每个活动终结点调用 一次 IBTTransportConfig.AddReceiveEndpoint ,并传入终结点的 URI、终结点的适配器特定配置以及该终结点的 BizTalk 配置。

下图演示了此 API 调用序列。 适配器实现以蓝色显示的接口。

显示 API 调用序列的图像。

实现提示: 通常,适配器不应在 IBTTransportControl.InitializeIPersistPropertyBag.LoadIBTTransportConfig.AddReceiveEndpoint 等调用中阻止消息引擎。 在这些调用中执行过多的处理可能会对服务启动时间产生负面影响。

所有具有一个或多个关联接收位置的接收适配器都在服务启动时创建。 所有接收适配器都是异步的,并支持批处理。 它们可以是进程内或隔离的。 有关接收适配器变量的其他信息,请参阅 适配器变量