'Element'是无效的XmlNodeType

use*_*603 4 c# xml

我不懂.我真的没有得到ReadEndElement.我假设在每个ReadStartElement之后,你需要关闭阅读器以前进到下一个start元素,如果没有更多的start元素,请关闭所有其他元素的ReadEndElement?

返回的XML示例:

<Envelope>
<Body>
<RESULT>
<SUCCESS>true</SUCCESS>
<SESSIONID>dc302149861088513512481</SESSIONID>
<ENCODING>dc302149861088513512481
</ENCODING>
</RESULT>
</Body>
</Envelope>

           reader.Read();
            reader.ReadStartElement("Envelope");
            reader.ReadStartElement("Body");
            reader.ReadStartElement("RESULT");
            reader.ReadStartElement("SUCCESS");
            reader.ReadEndElement();
            reader.ReadStartElement("SESSIONID");
            _sessionID = reader.ReadString();
            reader.ReadEndElement();
            reader.ReadEndElement(); <-- error here
            reader.ReadEndElement();
            reader.ReadEndElement();
Run Code Online (Sandbox Code Playgroud)

我忽略了其中一个元素(ENCODING)重新调整,因为我不需要它...不确定它是否与它有任何关系.也许我需要阅读每个元素,无论我是否想要使用它.

dtb*_*dtb 6

您必须阅读文档中的每个节点(属性,元素,...).

如果阅读器位于元素上,您可以使用XmlReader.Skip跳过它(及其所有子节点).