LINQ to XML is an in-memory XML programming API designed specifically to take advantage of Language-Integrated Query (LINQ). Although you can call the LINQ APIs directly, only Visual Basic enables you to declare XML literals and directly access XML axis properties.
<CompanyInfo> <DepartmentInfo> <Department ID="1"> <Deptno>10</Deptno> <DeptName>IT</DeptName> <Location>New York</Location> <EmployeeInfo> <Employee ID="1"> <Empno>1001</Empno> <LastName>Kim</LastName> <Salary>2000</Salary> <Deptno>10</Deptno> </Employee> </EmployeeInfo> </Department> </DepartmentInfo> </CompanyInfo>
VB Example
Imports System.Linq Dim doc As XDocument doc = XDocument.Load("data.xml") Dim qx = From xe In doc.Descendants.Elements("Employee") _ Select New With { _ .ID = xe.Attribute("ID").Value, _ .Empno = xe.Element("Empno").Value, _ .LastName = xe.Element("LastName").Value, _ .Salary = xe.Element("Salary").Value, _ .Deptno = xe.Element("Deptno").Value _ } Me.GridView1.DataSource = qx.ToList