I do not understand. I really don't get ReadEndElement. I assume that after each ReadStartElement you need to close the reader to go to the next start item, and if there are no more start items, close ReadEndElement for all other items?
Sample returned 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();
I ignore one of the (ENCODING) elements that have been reconfigured because I don't need it ... not sure if this has anything to do with it. Perhaps I need to read each element regardless of whether I want to use it or not.
source
share