Linq to XML: Diferencia entre Elements() y Descendants()
0 Comments
La diferencia es sencilla, mientra Descendants() cuenta todos los nodos (anidados incluidos), Elements() solo cuenta los del mismo nivel.
string xml = @" <Root> <Item> <id>1</id> </Item> <Item> <id>2</id> </Item> <Item> <id>3</id> <Items> <Item> <id>5</id> </Item> <Item> <id>6</id> </Item> </Items> </Item> <Item> <id>4</id> </Item> </Root>"; XDocument doc1 = XDocument.Parse(xml); var q1 = from e in doc1.Root.Descendants("Item") select e; var q2 = from e in doc1.Root.Elements("Item") select e; int c1 = q1.Count(); //6 int c2 = q2.Count(); //4 |