BizTalk自定义适配器

Sea*_*man 2 biztalk biztalk-2009

我不确定我是否提出了正确的问题,但这是我想要运行的场景:

多个文件(XML和一些相关文件,"附件")必须作为单个消息进入BizTalk.我已经研究过现有的适配器,并且看不到现有的适配器.为了更准确,文件来自文件系统.文件不会同时找到,但一旦到达,则无法确保订单.XML(内容)文件是知道它必须具有哪些附件(其他文件)的文件.

我们正在研究BizTalk 2009,我想知道自定义适配器或其他东西的责任.我是否可以寻找样品.

谢谢.

Dav*_*all 6

可能使用自定义适配器做你想做的事情,虽然我建议反对它.您可以使用业务流程实现所需的功能.

您正在寻找的是一个车队,或至少使用相关性.

在BizTalk中,一个队列是一种消息传递模式(与BizTalk特性相反),它允许一组消息由单个业务流程处理.

您基本上使用接收端口上的相关性以并行(您可能想要的)或顺序方式将消息分组在一起.

斯蒂芬·W·托马斯有一篇关于车队的文章[这里](http://msdn.microsoft.com/en-us/library/ms942189 ( BTS.10).aspx)(它适用于BT 2004,但概念仍然存在)在网上和书中有很多额外的信息(专业BizTalk服务器2006有一个小节)

如果没有关于你的场景的更多细节,很难确切地知道车队将如何建造,但下面有两种方法可以看待(同样,我没有机会正确使用BT2009,因此可能会延长对相关场景的支持,帮助你).

灵活的相关性

如果您对上下文XML中列出的文件一无所知,那么您可能需要一个类似于Charles Young在本文中描述的模式.

非均匀顺序车队

如果您之前确实有一点信息,可以采用以下方式(基本上是非均匀顺序车队):

这假设有一些方法可以将所有文件链接在一起,以便您可以将它们关联起来.

创建一个订阅您的入站接收端口(包含文件接收位置)的业务流程.

此业务流程将具有为您的内容文件设置的单个激活接收形状.

一旦内容文件启动了编排,第二个相关的接收形状就开始拾取与该内容文件匹配的消息.(第二次接收可能在循环中以允许可变数量的文件)

然后,将它们一起打包到设计的单个出站文件中,并在收到完整数量的文件后将其发送出去.