您好,我正在尝试使用 xpath 读取我的 xml 文档。我已经学习了几个星期,刚刚学习 XML 和 VB,但似乎遇到了障碍。我尝试了一些不同的尝试来执行此操作,并且使用 xpathnavigator 类在网页上显示 XML 文件没有问题。但后来我需要格式化为 html 表,所以我采取了另一条路线,只是添加了带有 formview 的 xmldatasource。这是我的代码
<oriondata station='GiftShop'>
<meas name="GiftShopTime">2011/02/08 16:39:01</meas>
<meas name="GiftShopItemNumber">6</meas>
<meas name="GiftShopDuration">200</meas>
</oriondata>
我想要获取的值是本示例中的日期“2011/02/08 16:39:01”和数字“6”以及持续时间“200”
如果我使用的话,不确定我做错了什么
<asp:Label ID="lblID" Runat="server" Text='<%# XPath("//oriondata/meas/@name") %>' /></b><br/>
这给了我“GiftShopTime”,但不是实际时间。另外,如果我只使用这个
<asp:Label ID="lblID" Runat="server" Text='<%# XPath(".") %>' />
</b><br/>
这为我提供了我正在阅读的当前节点,但当我这样做时,当前节点恰好是实际时间
我只是还没有找到一种方法来指定每个名称,我认为这应该可行
Xpath("/oriondata/meas/name/@GiftShopTime")
但是什么也没显示。
最佳答案
您的 xpath 需要更改为
Xpath("/oriondata/meas[@name='GiftShopTime']")
这个特定 xpath 的语法意思是“给我元素 meas 的值,该元素是 oriondata 的子元素,其属性 name值为'GiftShopTime'”。
关于asp.net - 使用 Xpath 检索元素的文本内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5009087/