为什么XDocument.Parse()没有正确解析我的XML?

时间:2011-06-06 01:42:25

标签: c# .net linq

我正在尝试使用XDocument.Parse(string s)来解析从基于REST的API返回的一些XML。在解析XML之后,它会创建一个新的XDocument,但该文档不包含正确解析的XML节点。第一个节点的名称是正确的节点名称,但该值是XML中所有文本的串联,无论属于哪个元素。谁能帮我弄清楚发生了什么?

XML

<sci_reply version="1.0">
  <send_message>
    <device id="00000000-00000000-00000000-00000000">
      <error id="303">
        <desc>Invalid target. Device not found.</desc>
      </error>
    </device>
    <error>Invalid SCI request. No valid targets found.</error>
  </send_message>
</sci_reply>

XDocument对象的调试视图 enter image description here

2 个答案:

答案 0 :(得分:2)

这是预期的行为。 XML元素的Value是其所有子元素的值的连接。如果您想要实际访问XML,请阅读有关LINQ to XMLclasses in the System.Xml.Linq namespace

的内容

答案 1 :(得分:0)

仅调试器为nice

正在显示其所有子项的根。