【发布时间】:2013-11-26 09:48:41
【问题描述】:
谁能指出我正确的解决方案,从 xml 文件中获取数据。我通常在 VB 应用程序中使用 XmlDocument,而且它一直都能完美运行。
现在 Windows 商店应用程序不再真正支持 xmlDocument,当导入 DOM 但 XmlNode 不可用时,som 工作。然而,也许它只是我,但在我看来,XDocument 似乎非常非常困难,而且对于在简单的 XML 文件中查找数据不是很合乎逻辑。
在我使用这样的之前:
xmlDevices = xmlDoc.GetElementsByTagName("Device")
For Each xmlDevice As xmlElement In xmlDevices
Dim strDeviceName As String = xmlDevice.Item("DeviceName").InnerText
xmlModbuses = xmlDoc.GetElementsByTagName("Modbus")
For Each xmlModbus As xmlElement In xmlModbuses
Dim strModbusID As String = xmlModbus.Attributes("id").InnerText
Next
Next
我想从中寻找数据的 XML 文件如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<Devices>
<Device id="01">
<DeviceName>VP18</DeviceName>
<Modbusees>
<Modbus id="01">1000</Modbus>
<Modbus id="02">2000</Modbus>
...
</Modbuses>
<Alarms>
<Alarm id="01">
<AlarmText>Test</AlarmText>
<AlarmType>Critical</AlarmType>
</Alarm>
<Alarm id="02">
<AlarmText>Test</AlarmText>
<AlarmType>Critical</AlarmType>
</Alarm>
</Alarms>
<Device id="02">
<DeviceName>VP19</DeviceName>
<Modbusees>
<Modbus id="01">1010</Modbus>
<Modbus id="02">2020</Modbus>
...
</Modbuses>
<Alarms>
<Alarm id="01">
<AlarmText>Test</AlarmText>
<AlarmType>Critical</AlarmType>
</Alarm>
<Alarm id="02">
<AlarmText>Test</AlarmText>
<AlarmType>Critical</AlarmType>
</Alarm>
</Alarms>
</Device>
</Devices>
最好的问候 托马斯·尼森
【问题讨论】:
标签: windows-runtime linq-to-xml xmldocument