XML文件结构:
<?xml version="1.0" encoding="UTF-8" ?>
<employees>
<employee>
<fio>Карпов</fio>
<date>10.09.1978</date>
<home>11 А Победа</home>
<phone>87509708898</phone>
</employee>
<list_work>
<work>
<name>ЖЭК</name>
<date_start>10.09.2001</date_start>
<date_end>10.09.2004</date_end>
</work>
<work>
<name>Маркетинг</name>
<date_start>11.04.2005</date_start>
<date_end>10.12.2011</date_end>
</work>
</list_work>
<list_pay>
<pay>
<year>2004</year>
<month>09</month>
<salary>75000</salary>
</pay>
<pay>
<year>2007</year>
<month>07</month>
<salary>250000</salary>
</pay>
</list_pay>
<employee>
<fio>Глухарь</fio>
<date>02.12.1981</date>
<home>12 Б Минусинская</home>
<phone>87509708881</phone>
<list_work>
<work>
<name>Рекламный агент</name>
<date_start>10.03.2011</date_start>
<date_end>05.09.2014</date_end>
</work>
<work>
<name>F1</name>
<date_start>11.04.2016</date_start>
<date_end>08.10.2018</date_end>
</work>
</list_work>
<list_pay>
<pay>
<year>2012</year>
<month>06</month>
<salary>56000</salary>
</pay>
<pay>
<year>2015</year>
<month>12</month>
<salary>550000</salary>
</pay>
</list_pay>
</employee>
</employees>
我需要选择姓氏、地址和职位并将这些信息加载到 listView 中。
xDoc = XDocument.Load("worker.xml");
IEnumerable<XElement> workers = xDoc.Elements();
foreach (XElement worker in workers.Elements())
{
listView1.Items.Add(worker.Element("fio").Value);
listView1.Items[worker.Items.Count - 1].SubItems.Add(worker.Element("home").Value);
listView1.Items[listView1.Items.Count - 1].SubItems.Add(worker.Element("name").Value);
}
但是我运行程序时,只显示了姓氏和地址,然后只显示了第一个条目,并且根本没有作品的标题。

如何让它显示所有条目,即姓氏和地址,以及显示作品的标题?
xml 无效。
在一种情况下,list_work 节点是一个独立节点,在另一种情况下,list_work 嵌套在员工节点中。
如果 list_work 节点嵌套在文档中: