0

我有一个包含(除其他外)这样的 xml 结构的文件:

<exchanges>
    <name deliverycode="11">BIT</name>
    <name deliverycode="92">BOTC</name>
    <name deliverycode="24">BTEC</name>
    <name deliverycode="24">BTEX</name>
    <name deliverycode="60">NPCH</name>
    <name deliverycode="00">TSE</name>
    <name deliverycode="00">TSP</name>
    <name deliverycode="91">UCA</name>
</exchanges>

对于给定的首字母缩写词,我想要交付代码编号,例如“BIT”应该返回“11”、“BOTC”->“92”等。我使用 MSBuild v4.0 并且没有成功尝试 XmlRead 任务来完成此操作。

4

1 回答 1

0

您可以使用其中一种在线 XPath 生成器和 XPath 评估器来快速获得正确的 XPath。

我用这个来测试以下 XPath:

string(/exchanges//name[text()="BOTC"]/@deliverycode)

它产生正确的输出92

您可以使用MSBuild 社区任务项目中的XMLRead任务来检索值(看起来您在帖子中引用了它,所以我提到它是为了确保我们在同一页面上)。

注意:我现在没有在 msbuild 环境中测试 XPath 的设置(我只使用我提到的 web 评估器进行了测试),因此可能需要进行一些小的调整以使其在 msbuild env 中产生值。

于 2013-03-23T21:24:33.013 回答