C# 为什么';t XDocument.Parse()正确解析我的XML吗?

C# 为什么';t XDocument.Parse()正确解析我的XML吗?,c#,.net,linq,C#,.net,Linq,我试图使用XDocument.Parse(字符串s)来解析从基于REST的API返回的一些XML。解析XML后,它会创建一个新的XDocument,但该文档不包含正确解析的XML节点。第一个节点的名称是正确的节点名称,但该值是XML中所有文本的串联值,而不管属于哪个元素。有人能帮我弄清楚发生了什么事吗 XML <sci_reply version="1.0"> <send_message> <device id="00000000-00000000-00

我试图使用XDocument.Parse(字符串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>

无效目标。找不到设备。
无效的SCI请求。找不到有效的目标。
XDocument对象的调试视图

这正是调试器的优点


正在显示根目录及其所有子目录。

这是预期的行为。XML元素的
是其所有子元素值的串联。如果您想实际访问XML,请阅读或。

等等,它有什么问题吗?调试器只是显示在对象上调用
ToString()
时将获得的字符串。它没有什么问题,如果有,在解析它时会引发异常。