我不知道如果我要问正确的问题,但这是该方案,我试图运行:

多个文件(XML和一些相关的文件"附件")已得到管理作为一个单一消息。我已经看到现有的适配器,并且看不到这样做,现有的一次。为了更加准确,文件取自文件的系统。文件都没有发现在相同的时间,但到达一个在一段时间,当时的顺序并不得到保证。XML(内容)的文件是一个知道什么附件就必须有(什么其他文件)。

我们正在寻找管2009我想知道将这项责任的一个自定义的适配器还是其他什么东西。是我能看看样品。

谢谢。

有帮助吗?

解决方案

有可能可以做你想要使用的是什么自定义适配器,但我建议反对。你可以实现你需要使用什么编排

什么你正在寻找LIKEY是一个车队,或者至少部分使用相关的。

在的BizTalk一个车队是一种消息模式(而不是一个BizTalk功能),其允许消息组由单个业务流程进行处理。

您基本上使用并行(你可能想要的)或顺序方式接收端口群消息上使用关联在一起。

有文章[这里]( HTTP ://msdn.microsoft.com/en-us/library/ms942189(BTS.10)的.aspx)由Stephen W.托马斯约车队(这是2004年BT但其概念仍然持有)和有很多在网络上,并在书的附加信息(专业的BizTalk Server 2006年有款对他们)

如果没有您的方案更多的细节,很难知道车队会究竟是如何建造,但低于是看(也,我已经没有机会正确使用BT2009所以有可能会延长支持两种方法相关场景,帮助你)。

<强>灵活相关

如果你不知道你可能会需要像查尔斯 - 杨的这个职位。

<强>非均匀顺序保护

如果你有信息的一点点手前一种方法可能如下(基本上是一个非均匀连续的车队):

这使得假设有所有的文件连接在一起,所以你可以把它们关联的一些方法。

创建预订你入站接收端口(它包含文件接收位置)的单个编排。

此流程将具有单个活化收到设置为自己的内容文件的形状。

在业务流程由内容启动文件的第二相关接收形状开始拾取匹配内容文件的消息。 (该第二接收可能可能是在一个循环中,以允许文件的变量数)

您再收拾他们一起到设计的一个出站文件发送出去,一旦已收到文件的完整号码。

其他提示

似乎我一个更好的方法是实现与自定义管道组件和/或定制适配器的组合上述要求。我假设你并不真的需要操作输入的文件 - 除了内容XML文件 - 或者,你不能因为他们是二进制格式。这需要一个自定义管道组件。

你可以做的是开发一个自定义的BizTalk适配器与文件系统交互,以实现监听和循环逻辑。接下来,你可以开发一个自定义管道组件或许建立一个单一的BizTalk消息与二进制数据的base64它的数据类型。此外,您还可以促进信息的权利在此组件,使业务流程订阅。

业务流程更适合于实现其中的消息已经在XML格式的业务的工作流程场景。这似乎并不如此。在任何情况下,我认为将需要最起码的自定义管道组件。

大卫的答案是正确的答案。

即使你不知道绝对没有关于内容的预期附件,当然,你知道他们的名字和地点。因此可以使用 灵活的相关性 与在大卫的答案是这样的:

关键的解决方案是相互关联的内BTS。ReceivedFileName财产。

第一,创建一个自定义的接收管道,与一个自定义的管组件,以促进BTS。ReceivedFileName背景下的财产所收到的消息。这个简单的定义成分是相当容易写信但是你可以把它简单的使用的第三方框架,例如,(无耻的插头,这里)我的 PipelineComponentBase 类或优秀 管理服务器管道组成的向导.

现在简单的部分:

  • 附件以接收在特定位置上,指定通过其路径的文件系统。
  • 创建一个接收的位置,倾听 另一个位置, ,仅用于控制文件时的实际吞下通过管.
  • 在你的业务流程,创建一个相关类型的BTS。ReceivedFileName酒店和相关设置基于这种相关性的类型。
  • 当你想要收到的二进制的附件,发送假信息与BTS。ReceivedFileName背景下的财产设定文件的附件二进制但与路径匹配的 替换位置 ;一个用由接收的位置。初始化上的相关发送的形状。
  • 使用一种表达形拷贝二进制文件从原来的位置,以使用由接收的位置。
  • 最后,使用一个接收形限于接收端口包含收到位,其定义的接收管道将促进BTS。ReceivedFileName财产。

注意到实际上,你需要发一条消息,以便初始化的相关性。不要紧,什么消息你送其实。我做什么是送消息的通过发送管道,其中包含一个 管道组成部分。这是一个管道分量读取的消息,但返回null(使得消息不会找到空气稀薄之前达到的适配器)。一种更精心设计的解决办法将是使用 适配器。这是一个适配器读取的消息,但没有做任何事情。

这两个解决方案,避免具有许多文件堆积在一个临时位置的地方,只是为了初始化相关!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top