DetailPage-MSS-KB

Knowledge Base

Artikel-ID: 308066 - Geändert am: Donnerstag, 4. September 2003 - Version: 2.3

 

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt wie Sie ein DataSet -Objekt, um zwei XML-Dokumente zusammenführen. Das DataSet -Objekt ist zur Unterstützung zentraler getrennt, verteilten Datenszenarios mit ADO.NET. Das DataSet ist eine speicherresidente Darstellung von Daten, die ein konsistentes, relationales Programmiermodell unabhängig von der Datenquelle bereitstellt. Das DataSet stellt einen vollständigen Satz von Daten, einschließlich verknüpfter Tabellen, Einschränkungen und Beziehungen zwischen den Tabellen dar.

Voraussetzungen

Die folgende Liste führt die empfohlene Hardware, Software, Netzwerkinfrastruktur und Servicepacks, die Sie benötigen:
  • Microsoft Windows XP, Windows 2000 oder Windows NT 4.0 Service Pack 6a (SP6a)
  • Microsoft Visual Studio .NET
In diesem Artikel wird vorausgesetzt, dass Sie über Erfahrungen auf den folgenden Gebieten verfügen:
  • Visual Basic
  • Extensible Markup Language (XML)

Erstellen der Datei "Books1.xml"

  1. Menü Start klicken Sie auf Ausführen , geben Sie Notepad.exe und klicken Sie dann auf OK .
  2. Markieren Sie den folgenden Code, klicken Sie mit der rechten Maustaste auf den Code und klicken Sie dann auf Kopieren . Klicken Sie im Editor im Menü Bearbeiten auf Einfügen .
    <?xml version="1.0"?>
    <catalog>
       <book id="bk101">
          <author>Gambardella, Matthew</author>
          <title>XML Developer's Guide</title>
          <genre>Computer</genre>
          <price>44.95</price>
       </book>
       <book id="bk102">
          <author>Ralls, Kim</author>
          <title>Midnight Rain</title>
          <genre>Fantasy</genre>
          <price>5.95</price>
       </book>
    </catalog>
    					
  3. Klicken Sie im Menü Datei auf Speichern .
  4. Klicken Sie im Dialogfeld Speichern unter im Dropdown-Listenfeld Dateityp auf Alle Dateien . Geben Sie in das Textfeld Name "Books1.XML" und klicken Sie dann auf Speichern .

Erstellen der Datei "Books2.XML"

  1. Erstellen Sie im Editor eine neue Textdatei namens "Books2.XML".
  2. Kopieren Sie den folgenden XML-Code in "Books2.XML":
    <?xml version="1.0"?>
    <catalog>
    <book id="bk106">
          <author>Randall, Cynthia</author>
          <title>Lover Birds</title>
          <genre>Romance</genre>
          <price>4.95</price>
       </book>
       <book id="bk107">
          <author>Thurman, Paula</author>
          <title>Splish Splash</title>
          <genre>Romance</genre>
          <price>4.95</price>
       </book>
    </catalog>
    					
  3. Klicken Sie im Menü Datei auf Speichern .
  4. Klicken Sie im Dialogfeld Speichern unter im Dropdown-Listenfeld Dateityp auf Alle Dateien . Geben Sie in das Textfeld Name "Books2.XML" und klicken Sie dann auf Speichern .

Schritte zum Erstellen der Anwendung Visual Basic .NET

  1. Starten Sie Visual Studio .NET und erstellen Sie ein neues Visual Basic-Konsolenanwendungsprojekt.
  2. Fügen Sie den folgenden Code am Anfang des Codefensters:
    Imports System.Xml
    					
  3. Kopieren und fügen Sie den folgenden Code in die Sub Main -Prozedur:
            Dim xmlreader1 As New XmlTextReader("C:\Books1.xml")
    
            Dim xmlreader2 As New XmlTextReader("C:\Books2.xml")
    
            Dim ds1 As New DataSet()
            Try
                ds1.ReadXml(xmlreader1)
    
                Dim ds2 As New DataSet()
                ds2.ReadXml(xmlreader2)
    
                ds1.Merge(ds2)
                ds1.WriteXml("C:\Books.xml", XmlWriteMode.IgnoreSchema)
                Console.WriteLine("Completed merging XML documents")
            Catch ex As Exception
                Console.WriteLine(ex.Message)
            End Try
            Console.Read()
    					
  4. Erstellen Sie die Anwendung, und führen Sie sie aus. Beachten Sie, dass im Konsolenfenster die Meldung "Zusammenführen von XML-Dokumenten beendet" (sinngemäß) erscheint.
  5. Schließen Sie das Konsolenfenster. Beachten Sie, dass die Datei Books.XML im angegebenen Pfad erstellt wird.
  6. Öffnen Sie "Books.xml". Wie Sie sehen, wurden die Daten aus "Books2.xml" am Ende von "Books1.xml" angehängt.

Unterschiedliche Szenarien für XML-Dokumente

XML-Dokumente von gleicher Struktur zusammenführen

Das vorhergehende Visual Basic .NET-Beispiel veranschaulicht die Ausgabe der XML-Dokumenten mit der gleichen Struktur.

XML-Dokumente von unterschiedlicher Struktur zusammenführen

  1. Öffnen Sie "Books2.XML", und ersetzen die XML-Daten mit dem folgenden XML-:
    <?xml version="1.0" ?>
    <SampleData>
    <Customer>
              <CustomerName>Bill Gates</CustomerName>
              <PricePerUnit>5.95</PricePerUnit>
              <ClosingDate>2001-12-16</ClosingDate>
    </Customer>
    <Customer>
              <CustomerName>Bill Gates</CustomerName>
              <PricePerUnit>5.95</PricePerUnit>
              <ClosingDate>2001-12-16</ClosingDate>
    </Customer>
    </SampleData>
    					
  2. Speichern Sie "Books2.XML".
  3. Führen Sie das Visual Basic .NET Projekt erneut aus. Sie werden bemerken, dass die Knoten aus dem zweiten Dokument ("Books2.xml") an das erste XML-Dokument ("Books1.xml") angehängt wurden.

Sammenführen Sie XML-Dokumente mit ähnlicher Struktur, wenn das zweite Dokument zusätzliche Elemente enthält,

  1. Öffnen Sie "Books2.XML", und ersetzen die XML-Daten mit dem folgenden XML-:
    <?xml version="1.0"?>
    <catalog>
    <book id="bk106">
          <author>Randall, Cynthia</author>
          <title>Lover Birds</title>
          <genre>Romance</genre>
          <price>4.95</price>
          <publish_date>2000-09-02</publish_date>
          <description>When Carla meets Paul at an ornithology 
          conference, tempers fly as feathers get ruffled.</description>
       </book>
       <book id="bk107">
          <author>Thurman, Paula</author>
          <title>Splish Splash</title>
          <genre>Romance</genre>
          <price>4.95</price>
          <publish_date>2000-11-02</publish_date>
          <description>A deep-sea diver finds true love twenty 
          thousand leagues beneath the sea.</description>
       </book>
    </catalog>
    					
  2. Speichern Sie "Books2.XML".
  3. Führen Sie das Visual Basic .NET Projekt erneut aus. Sie werden bemerken, dass die Knoten aus dem zweiten Dokument an das erste XML-Dokument angehängt wurden.

XML-Dokumente mit ähnlicher Struktur zusammenführen, wenn das zweite XML-Dokument Attribute enthält

  1. Öffnen Sie "Books2.XML", und ersetzen die XML-Daten mit dem folgenden XML-:
    <?xml version="1.0"?>
    <catalog>
    <book id="bk106" genre="Romance">
          <author>Randall, Cynthia</author>
          <title>Lover Birds</title>
          <price>4.95</price>
       </book>
       <book id="bk107" genre="Romance">
          <author>Thurman, Paula</author>
          <title>Splish Splash</title>
          <price>4.95</price>
       </book>
       <book id="bk108" genre="Horror">
          <author>Knorr, Stefan</author>
          <title>Creepy Crawlies</title>
          <price>4.95</price>
       </book>
       </catalog>
    					
  2. Speichern Sie "Books2.XML".
  3. Führen Sie das Visual Basic .NET Projekt erneut aus. Beachten Sie, dass die Knoten aus dem zweiten Dokument an die erste XML-Dokument angehängt sind und die Struktur dasselbe wie das erste XML-Dokument ist.

Sammenführen Sie XML-Dokumente mit ähnlicher Struktur, erste Dokument Attribute enthält,

  1. Ändern Sie die Visual Basic-Code wie folgt, sodass "Books1.XML" an "Books2.XML" angefügt wird:
            Dim xmlreader1 As New XmlTextReader("C:\Books2.xml")
    
            Dim xmlreader2 As New XmlTextReader("C:\Books1.xml")
    
            Dim ds1 As New DataSet()
            Try
                ds1.ReadXml(xmlreader1)
    
                Dim ds2 As New DataSet()
                ds2.ReadXml(xmlreader2)
    
                ds1.Merge(ds2)
                ds1.WriteXml("C:\Books.xml", XmlWriteMode.IgnoreSchema)
                Console.WriteLine("Completed merging XML documents")
            Catch ex As Exception
                Console.WriteLine(ex.Message)
            End Try
            Console.Read()
    					
  2. Führen Sie das Visual Basic .NET Projekt erneut aus. Beachten Sie, dass das resultierende XML-Dokument die Knoten aus "Books1.xml" an "Books2.xml" anfügt. Beachten Sie zudem, dass alle "Book"-Knoten das Attribut "genre" beinhalten.

    Abhängig von der Struktur des ersten XML-Dokuments wird das zweite XML-Dokument daher so modifiziert, dass das resultierende XML mehr Bedeutung besitzt.

Informationsquellen

Weitere Informationen finden Sie die Artikel der Microsoft Knowledge Base:
286817  (http://support.microsoft.com/kb/286817/EN-US/ ) So wird 's gemacht: Zusammenführen von Daten in zwei XML-Dokumenten durch Programmierung das Dokumentobjektmodell (DOM)

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.1
Keywords: 
kbmt kbhowtomaster KB308066 KbMtde
Maschinell übersetzter ArtikelMaschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 308066  (http://support.microsoft.com/kb/308066/en-us/ )
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
Freigeben
Weitere Supportoptionen
Microsoft Community-Supportforen
Kontaktieren Sie uns direkt
Zertifizierten Partner finden
Microsoft Store