1

我从 GPS 互联网服务获得了 XML。它看起来像:

不是常规的 XML

我需要从中获取 X 和 Y 值,但我不知道该怎么做

我尝试使用 Descendants XDocument 属性,但它无法检索值。

有什么建议么?

4

3 回答 3

3

就像是.Elements("Property").Where(el=>el.Attribute("Name").Value == "X")

这应该为您提供具有 X 属性的元素,之后您只需选择该元素的任何属性的值。

于 2012-06-06T14:31:38.873 回答
1
        var el = XElement.Parse(xml);
        var x = el.Elements("Property").Where(e => e.Attribute("Name").Value == "X").Single().Attribute("Value").Value;
        var y = el.Elements("Property").Where(e => e.Attribute("Name").Value == "Y").Single().Attribute("Value").Value;

或者

        var x = el.Elements("Property").ElementAt(3).Attribute("Value").Value;
        var y = el.Elements("Property").ElementAt(4).Attribute("Value").Value;
于 2012-06-06T14:37:23.463 回答
0

他是我的解决方案

gpsResponseXML.Descendants("Property").Where(el => el.Attribute("Name").Value == "X").Attributes("Value").FirstOrDefault().Value)
于 2012-06-06T15:18:22.920 回答