You can do it in few ways, through:
1)
XDocument class[
^]
2)
XmlDocument class[
^]
3)
XmlSerialization[
^]
For further details, please see:
Parsing XML (Visual Basic) | Microsoft Docs[
^]
HOW TO: Read XML Data into a DataSet by Using Visual Basic .NET[
^]
How to: Access XML Descendant Elements (Visual Basic) | Microsoft Docs[
^]
Example:
Dim xdoc As XDocument = XDocument.Load("FullFileNameHere.xml")
Dim myData = xdoc.Descendants("Component") _
.Select(Function(x) New With _
{ _
.CustomerPartDescription = x.Element("CustomerPartDecription").Value, _
.ComponentPart = x.Element("ComponentPart").Value, _
.ProductKey = x.Descendants("SerialDetail").Select(Function(y) y.Element("ProductKey").Value).ToList(), _
.SerialNo = x.Descendants("SerialDetail").Select(Function(y) y.Element("SerialNo").Value).ToList() _
})
Returns:
CustomerPartDescription ComponentPart ProductKey SerialNo
ISaGRAF5 Essential Unlimited USB MED S/W 9527-I5PRLUSBINTM [PN-516445] RRRRRRR OOOOOOO
PPPPPPP UUUUUUU
NNNNNNN QQQQQQQ
DDDDDDD WWWWWWW
YYYYYYY XXXXXXX