string xml = @"<AllBands > <Band> <Name ID=""1234"" started=""1962"">Beatles<![CDATA[lalala]]></Name> <Last>1</Last> <Salary>2</Salary> </Band> <Band> <Name ID=""222"" started=""1968"">Doors<![CDATA[lalala]]></Name> <Last>1</Last> <Salary>2</Salary> </Band> </AllBands>"; XmlReader reader = XmlReader.Create(new StringReader(xml)); XElement root = XElement.Load(reader); var child1 = root.XPathSelectElements(@"/AllBands/Band" );
child1 не имеет дочерних элементов!
Чего мне не хватает?
root не относится к документу XML, он относится к элементу AllBands, поскольку вы загрузили его с помощью XElement.Load().Таким образом, ваш XPATH должен быть относительно этого элемента.
root
AllBands
XElement.Load()
var children = root.XPathSelectElements("Band");