解析xml列表,null错误

本文关键字:null 错误 列表 xml 解析 | 更新日期: 2023-09-27 18:18:32

<items>
  <item id="2" value="100"/>
  <item id="3" value="50"/>
</items>

我想把它放入List<Item>,其中Item是具有IdValue性质的类。

但是下面的代码:

XDocument xmlDoc = XDocument.Load(@"itemsdata.xml");
List<Item> items= xmlDoc.Descendants("items").Select(x => new Transfer()
{
    FromId = (uint) x.Element("id"),
    Amount = (uint) x.Element("value")
}).ToList();

抛出以下异常:

"值不能为空。'r'nParameter name: element"

解析xml列表,null错误

您可能应该搜索"item"后代(而不是"items"后代),然后查询各自的属性:

List<Item> items = xmlDoc.Descendants("item").Select(x => new Item()
{
    FromId = (uint) x.Attribute("id"),
    Amount = (uint) x.Attribute("value")
}).ToList();