Małgorzata B. ***
Temat: [C#] Parsowanie XML-a do tabeli
Witam,mam dokument XML:
<dane>
<uczen>
<id>1</id>
<imie>Jan</imie>
<nazwisko>Nowak</nazwisko>
<ksiazki>
<ksiazka>
<tytul>Tytul1</tytul>
<autor>Autor1</autor>
</ksiazka>
<ksiazka>
<tytul>Tytul2</tytul>
<autor>Autor2</autor>
</ksiazka>
</ksiazki>
</uczen>
<uczen>
<id>2</id>
<imie>Stanisław</imie>
<nazwisko>Kowalski</nazwisko>
<ksiazki>
<ksiazka>
<tytul>Tytul3</tytul>
<autor>Autor3</autor>
</ksiazka>
</ksiazki>
</uczen>
</dane>
Do tabeli (DataTable) chcę wstawiać książki przypisane uczniom. W wyniku powinnam otrzymać:
id tytul autor
1 Tytul1 Autor1
1 Tytul2 Autor2
2 Tytul3 Autor3
Jak przeglądać dokument XML w głąb, by dane o książce były powiązane z danym uczniem (id)?
Dane o uczniach i o książkach pobieram za pomocą GetElementsByTagName(String) lub SelectNodes(String). Odbywa się to w dwóch pętlach for (jedna iteruje to uczniach, druga po książkach) i w wyniku otrzymuję 6.wierszy, zamiast 3-ch (2-ch uczniów * 3-y książki = 6).
(Dla powyższego przykładu nie mam kodu w C#, powyższy dokument XML jest tylko przekładem dla zobrazowania zagadnienia).
Będę wdzięczna za podpowiedzi.