XDocument と LINQ で遊んでいます。書き込むファイルを取得できました:
<SchoolData storeName="mikveIsrael" location="mikve">
<employee>
<personalInfo>
<name>Ilan Berlinbluv</name>
<zip>58505</zip>
</personalInfo>
<employeeInfo>
<salary>5000</salary>
<id>1</id>
</employeeInfo>
</employee>
<employee>
<personalInfo>
<name>Noam Inbar</name>
<zip>58504</zip>
</personalInfo>
<employeeInfo>
<salary>4500</salary>
<id>2</id>
</employeeInfo>
</employee>
</SchoolData>
このコードを使用して値を読み取ろうとしました:
public void QueryDoc(XDocument doc)
{
var data = (from item in doc.Descendants("employee")
select new {
name = item.Element("personalInfo").Element("name").Value,
salary = item.Element("employeeInfo").Element("salary").Value,
ID = item.Element("employeeInfo").Element("ID").Value,
zip = item.Element("personalInfo").Element("zip").Value
});
foreach (var p in data)
{
Console.WriteLine(p.ToString());
}
}
ただし、コードを実行しようとすると、例外が発生します。このチュートリアルObject reference not set to an instance of an object.
に
従っていますが、画面では機能しますが、私の場合は機能しません。