Well yes, your data isn't a valid XML document. (The error message is pretty clear - you've got multiple top-level elements.) You could make it a valid document by adding a dummy root element:
xml.LoadXml("<root>" & sReceived & "</root>")
... but if you get the chance to change whatever's sending the data, it would be better if it sent an actual XML document.
EDIT: If you're able to use LINQ to XML instead of XmlDocument
, getting the client number and the version number are easy. For example, as text:
Dim clientVersion = doc.Root.Element("XmlClient").Value
Dim xmlVersion = doc.Root.Element("XmlVersion").Value
EDIT: Okay, if you're stuck with XmlDocument
, I believe you could use:
Dim clientVersionNode = doc.DocumentElement.GetElementsByTagName("XmlClient")(0)
Dim clientVersion = (CType(clientVersionNode, XmlElement)).InnerText
(and likewise for xmlVersion
)
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…