XmlTextReader - ReadOuterXML wird nur beim ersten durchlauf ausgfeührt?

  • VB.NET

    XmlTextReader - ReadOuterXML wird nur beim ersten durchlauf ausgfeührt?

    Vieleicht habe ich hier irgendwo einen denkfehler, aber folgendes möchte ich erreichen:

    Hier einmal die xml-daten:

    XML-Quellcode

    1. <?xml version='1.0'?>
    2. <collection>
    3. <client>
    4. <to>Tove</to>
    5. <from>Jani</from>
    6. <heading>Reminder</heading>
    7. <body>Don't forget me this weekend!</body>
    8. </client>
    9. <client>
    10. <to>Tove</to>
    11. <from>Jani</from>
    12. <heading>Reminder</heading>
    13. <body>Don't forget me this weekend!</body>
    14. </client>
    15. <thread id='1'>
    16. <to>
    17. Tove
    18. </to>
    19. <from>
    20. Jani
    21. </from>
    22. <heading>
    23. Reminder
    24. </heading>
    25. <body>
    26. Don't forget me this weekend!
    27. </body>
    28. </thread>
    29. <thread id='2'>
    30. <to>
    31. Tove
    32. </to>
    33. <from>
    34. Jani
    35. </from>
    36. <heading>
    37. Reminder
    38. </heading>
    39. <body>
    40. Don't forget me this weekend!
    41. </body>
    42. </thread>
    43. </collection>

    (sind nur testdaten)

    ich möchte nun aus allen elements der tiefe 1 den gesamten xml-inhalt extrahieren, folgender versuch dazu:


    VB.NET-Quellcode

    1. While reader.Read()
    2. If reader.Depth = 1 Then
    3. TextBox1.Text &= reader.Name & Environment.NewLine & reader.ReadOuterXml & Environment.NewLine & Environment.NewLine
    4. End If
    5. End While



    woraufhin textbox1.text folgendes ist:



    client
    <client><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don't forget me this weekend!</body></client>

    client


    thread


    thread



    es wird also lediglich beim ersten vorkommen eines elements der tiefe 1 auch tatsächlich das outerXML ausgelesen, nicht aber bei allen nachfolgenden......




    Vieleicht ist aber ja bereits mein ansatz nicht ganz durchdacht.

    ich möchte im endeffekt ein, von einer website dynamisch generiertes XML, "zerstückeln", sodass jeder node der tiefe 1, als eigenes xml-dokument getrennt gespeichert werden kann.

    die ursprüngliche datei kann hier belibige größen haben - von wenigen zeilen, bis hin zu ganzen büchern....