私のXML:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Bank>
<Customer id="0">
<FName>Adam</FName>
<LName>Kruz</LName>
<Accounts>
<Acount id="0" money="1500" />
<Acount id="1" money="6500" />
</Accounts>
</Customer>
</Bank>
私のLINQコード:
private void loadCustomers()
{
customers =
(
from c in XDocument.Load("database.xml").Root.Descendants("Customer")
select
new Customer((int) c.Attribute("id"), (string) c.Element("FName"), (string) c.Element("LName"))
{
accounts =
(
from a in c.Descendants("Account")
select new Account((int) a.Attribute("id"))
{
money = (double) a.Attribute("money")
}
).ToList()
}
).ToList();
}
問題:
クラスCustomerの一般的なリストがあります。このクラスには、3 つのプロパティと Account クラスの別の一般的なリストが含まれています。顧客データ (id、fname、lname) をロードできましたが、Accounts サブツリーからデータをロードする方法がわかりません:(
コードでエラーが発生する
タイプ 'System.ArgumentNullException' の未処理の例外が System.Xml.Linq.dll で発生しました - 追加情報: 値を null にすることはできません。
私はコードの多くのバリエーションを試してきましたが、それを機能させることができませんでした:( 誰かが Accounts サブツリーをロードする方法を動作するコードを投稿できますか? どうもありがとう!