複数の XML フィールドの解析に問題があります
これは XML のスタイルです:
<students>
<student>
<student_id>1</student_id>
<student_name>Mike</student_name>
<subjects>
<subject>
<school_subject>History</school_subject>
</subject>
<subject>
<school_subject>Maths</school_subject>
</subject>
<subject>
<school_subject>English</school_subject>
</subject>
</subjects>
</student>
<student>
...
</student>
</students>
Student_id や Student_name などの単純なフィールドを解析できますが、同じフィールドが複数回繰り返される場合、どうすればよいかわかりません:/ これは解析のソース コードです。
私は2つのクラスを作りました:
- 教科名を含む教科
- ID と名前、およびクラス Subject のリストを含む学生。
ソースコード:
List<Student> L1 = new List<Student>();
XDocument doc = XDocument.Load(s);
var q = from b in doc.Descendants("student")
select new
{
s_id = (string)b.Element("student_id"),
s_name = (string)b.Element("student_name"),
s_subject = (Subject)b.Elements("school_subject")
};
foreach (var p in q)
{
L1.Add(new Student() { id = p.s_id, name = p.s_name, subject = p.s_subject });
}
listBox1.ItemsSource = L1;
読んでくれてありがとう。私のとても下手な英語でごめんなさい。