Как получить определенный элемент Count в XML или переменную XElement
Рассмотрим этот XML:
<Employees>
<Person>
<ID>1000</ID>
<Name>Nima</Name>
<LName>Agha</LName>
</Person>
<Person>
<ID>1001</ID>
<Name>Ligha</Name>
<LName>Ligha</LName>
</Person>
<Person>
<ID>1002</ID>
<Name>Jigha</Name>
<LName>Jigha</LName>
</Person>
<Person>
<ID>1003</ID>
<Name>Aba</Name>
<LName>Aba</LName>
</Person>
</Employees>
Объявляю переменную XElement
и создаю XML, присваивая ей это. Как я могу получить количество элементов ID
в этой переменной XML в С#?
Ответы
Ответ 1
Вы можете фильтровать элементы-потоки с помощью метода Descendants
с именем "ID", а затем подсчитать результаты:
int count = xml.Descendants("ID").Count();
Помните, что Descendants
просматривает все уровни. Если у вас есть элемент, отличный от Person
, у которого также есть дочерний элемент ID
, вы бы хотели быть более конкретным. В этом случае для подсчета ID
дочерних элементов, относящихся к элементам Person
, вы должны использовать:
int count = xml.Elements("Person")
.Elements("ID")
.Count();
Ответ 2
var cnt = element.Descendants("ID").Count();
Ответ 3
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(XmlPath);
var totalItems = xmldoc.SelectNodes(
"/root/node/LastName/").Count;