我正在尝试使用Xml.Linq
从先前由Xml.Linq
创建的Xml中读取。这就是XML的样子:
<ItemsCollection>
<Item>
<ItemName>Computer</ItemName>
<ItemDescription>Computer's description</ItemDescription>
<ItemCategory>Electronics</ItemCategory>
<ItemPrice>2499.99</ItemPrice>
</Item>
</ItemsCollection>
负责将这些元素解析为Item
类对象的代码是:
var res = from myItem in xdoc.Root.Elements("Item")
select new Item((string)myItem.Element("ItemName"), (string)myItem.Element("ItemDescription"),
(Category)Enum.Parse(typeof(Category), (string)myItem.Element("ItemCategory")), (double)myItem.Element("Price"));
执行时,linq表达式抛出NullReferenceException。