以下の XML を読み、出力を次の順序で出力したいと思います。クエリを手伝ってもらえますか?
10 件名 1 A1 10 件名 2 B1 10 件名 3 C1 20 件名 1 B2 20 件名 2 A1 20 件名 3 C2
前もって感謝します
必要なフォームでクエリを実行する方法の例を次に示します。
XDocument doc = XDocument.Load("test.xml");
var query = from l in doc.Descendants("L1")
let id = l.Attribute("id").Value
from subject in l.Descendants("Subject")
select new
{
Id = id,
SubjectName = (string)subject.Attribute("SubjectName"),
Score = (string)subject.Attribute("Score")
};
foreach (var result in query)
{
Console.WriteLine(result);
}
出力:
{ Id = 10, SubjectName = Subject1, Score = A1 }
{ Id = 10, SubjectName = Subject2, Score = B1 }
{ Id = 10, SubjectName = Subject3, Score = C1 }
{ Id = 20, SubjectName = Subject1, Score = B2 }
{ Id = 20, SubjectName = Subject2, Score = A1 }
{ Id = 20, SubjectName = Subject3, Score = C2 }