我正在編寫一個從XML讀取並將信息放在列表中的代碼。 信息:從XML獲取子查詢列表c#
- 員工姓名
- 的幾個月裏,他已經完成
- 他需要工作在幾個月。
它們都存在於XML文件中。
我寫了這個代碼:
List<MonthlyInformation> result =
doc.Root.Elements().Descendants(nsXml + "MitarbeiterGroup")
.Select(x => new MonthlyInformation
{
Firstname = (string)x.Attribute("Group9"),
FinishedMonths = x.Descendants("Monat3").Select(s => new FinishedMonth {MonthName = (string)s.Attribute("Monat3"), Money = (string)s.Element("Cell").Attribute("Textbox142") }).ToList(),
ForecastMonths = x.Descendants("Monat9").Select(s => new ForecastMonth { MonthName = (string)s.Attribute("Monat9"), Money = (string)s.Element("Cell").Attribute("Textbox143") }).ToList()
}).ToList();
代碼工作正常,但無論是FinishedMonths和ForecastMonths數據成員總是空的。
這裏是XML
<MitarbeiterGroup Group9="Name....">
<Textbox111>
<UmsatzInternGroup_Collection>
<UmsatzInternGroup>
<Monat3 Monat3="Jan.">
<Cell Textbox142="11325" />
</Monat3>
</UmsatzInternGroup>
<UmsatzInternGroup>
<Monat3 Monat3="Feb.">
<Cell Textbox142="12345" />
</Monat3>
</UmsatzInternGroup>
</UmsatzInternGroup_Collection>
<ForecastExternGroup_Collection>
<ForecastExternGroup>
<Monat9 Monat9="Sep.">
<Cell Textbox143="17130" />
</Monat9>
</ForecastExternGroup>
<ForecastExternGroup>
<Monat9 Monat9="Okt.">
<Cell Textbox143="18000" />
</Monat9>
</ForecastExternGroup>
</ForecastExternGroup_Collection>
</Textbox111>
</MitarbeiterGroup>
,所以我需要在「Monat3」和所有的預測月「Monat9」讓每一個員工的所有個月的一部分。
請,如果你能儘快
有一點要注意,Monat3您所使用的屬性Textbox143和Monat9您也使用Textbox143。Monat3屬性實際上是Textbox142。 –
正確我錯誤地複製它,但仍然不起作用。 –
將名稱空間添加到x.Descendants(「Monat3」)。 – jdweng