0
我正在从Web服务获取XML响应。我需要使用XSLT转换此XML并将数据插入到数据库中。示例XML响应如下。如何使用XSLT声明数组
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Body>
<ttordhdr>
<ttordhdrRow>
<OH-ORDNBR>123</OH-ORDNBR>
<OH-ORDTYPE>B</OH-ORDTYPE>
<OH-DSTNFLR></OH-DSTNFLR>
<OH-RCVTYP>P</OH-RCVTYP>
</ttordhdrRow>
<ttordhdrRow>
<OH-ORDNBR>456</OH-ORDNBR>
<OH-ORDTYPE>c</OH-ORDTYPE>
<OH-DSTNFLR></OH-DSTNFLR>
<OH-RCVTYP>P</OH-RCVTYP>
</ttordhdrRow>
</ttordhdr>
<ttordline>
<ttordlineRow>
<OH-ORDNBR>123</OH-ORDNBR>
<OL-ORDLNNBR>1</OL-ORDLNNBR>
<OL-ITEMTYPE>true</OL-ITEMTYPE>
<OL-QTY>10</OL-QTY>
<OL-DISP></OL-DISP>
</ttordlineRow>
<ttordlineRow>
<OH-ORDNBR>123</OH-ORDNBR>
<OL-ORDLNNBR>1</OL-ORDLNNBR>
<OL-ITEMTYPE>true</OL-ITEMTYPE>
<OL-QTY>10</OL-QTY>
<OL-DISP></OL-DISP>
</ttordlineRow>
</ttordline>
</SOAP-ENV:Body>
我的要求是选择所有/从哪里是'B'。并将其与/映射并获得相应的。
我想我可以使用数组来存储和执行映射。请帮我在这
你能解释一下你的意思吗?你的意思是说,在任何文本中有'B'响应的地方,你想要找到它并将它与发现的元素一起存储?所以 B 会返回OH-ORDTYPE?然后你想用它做什么?一个XPath会给你那个(// * [text()='B']) –
Woody
2012-08-02 11:27:45
实际上我想要做的是从'ttordhdrRow'中选择所有的'OH-ORDNB',其中'OH-ORDTYPE'= B.然后将'OH-ORDNBR'与'ttordlineRow/OH-ORDNBR'映射并从'ttordhdrRow'获得相应的'OH-ORDNBR'。 – user1571041 2012-08-02 11:46:47
首先你的xml文件格式错误。和的订单是互换的。 –
CSharp
2012-08-02 12:09:16