BizTalk 将字段映射到序列

BizTalk Mapping Fields to a Sequence

我正在接触 BizTalk 和 VS。我的输入模式看起来与此类似。

<root>
  <order>
    <orderid>
    <orderdate>
    ...
    ...

和输出架构

<order>
  <header:sequence>
    <element name="orderid">
    <element name="orderdate">
    ...
    ...
  </header:sequence>

简而言之,在输出中,header 是一个复杂类型的序列,源中的各个节点被枚举为输出中的序列。

我们如何在 Visual Studio 中解决这个问题?

您需要做的是拥有一个从每个被映射元素到重复目标元素的循环 functoid。然后来自源元素的两个 links 第一个是标准 link Copy text value,第二个是 name 属性,为此您将 link 更改为Copy name.

输入

<root>
    <order>
        <orderid>1234567890</orderid>
        <orderdate>2020-01-28</orderdate>
    </order>
</root>

输出

<order>
    <header>
        <element name="orderid">1234567890</element>
        <element name="orderdate">2020-01-28</element>
    </header>
</order>

注意:您可以使用配置循环 Functoid 中的重新排序输入更改输出顺序。