Postupy: BETA: sloučit data z dvěma dokumenty XML pomocí System.XML s jazyka .NET

Překlady článku Překlady článku
ID článku: 308066 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek ukazuje, jak sloučit dvě dokumenty XML pomocí objektu DataSet. DataSet objektu je centrální podpůrné odpojeny, distribuována data scénáře s ADO.NET. DataSet je rezidentní reprezentace dat poskytuje konzistentní a relační programovací model bez ohledu na zdroj dat. DataSet představuje úplnou sadu dat, včetně souvisejících tabulek, omezení a relace mezi tabulkami.

Požadavky

Následující seznam obsahuje doporučený hardware, software, síťovou infrastrukturu a požadované aktualizace Service Pack:
  • Microsoft Windows XP, Windows 2000 nebo Windows NT 4.0 Service Pack 6a (SP6a)
  • Microsoft Visual Studio .NET
Tento článek předpokládá znalost následujících témat:
  • Syntaxe jazyka .NET
  • Extensible Markup Language (XML)

Vytvoření souboru Books1.xml

  1. Z nabídky Start na příkaz Spustit, zadejte Soubor Notepad.exe a klepněte na tlačítko OK.
  2. Zvýrazněte následující kód, klepněte pravým tlačítkem myši na kód a potom klepněte na tlačítko Kopírovat. V poznámkovém bloku, v nabídce Úpravy klepněte na příkaz Vložit.
    <?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. V nabídce soubor klepněte na tlačítko Uložit.
  4. V dialogovém okně Uložit jako v poli rozevíracího seznamu Typ klepněte na položku Všechny soubory. Do textového pole Název souboru zadejte Books1.xml a potom klepněte na tlačítko Uložit.

Vytvoření souboru Books2.xml

  1. V poznámkovém bloku vytvořte nový textový soubor s názvem Books2.xml.
  2. Zkopírujte a vložte následující XML do 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. V nabídce soubor klepněte na tlačítko Uložit.
  4. V dialogovém okně Uložit jako v poli rozevíracího seznamu Typ klepněte na položku Všechny soubory. Do textového pole Název souboru zadejte Books2.xml a potom klepněte na tlačítko Uložit.

Kroky vytvoření aplikace Visual Basic .NET

  1. Visual Studio .NET spusťte a vytvořit nový projekt aplikace Visual Basic konzoly.
  2. Horní okno Kód přidat následující kód:
    Imports System.Xml
    					
  3. Zkopírujte a vložte následující kód v proceduře Sub Main:
            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. Sestavit a spustit aplikaci. Všimněte si, že v okně konzoly se zobrazí zpráva "Dokončeno slučování dokumentů XML".
  5. Zavřete okno konzoly. Všimněte si, že soubor Books.XML je vytvořen v zadané cestě.
  6. Otevřete Books.XML. Všimněte si, že data z Books2.xml připojena na konec Books1.xml.

Různé scénáře dokument XML

Sloučit dokumenty XML, ve kterých stejná struktura

Předchozí příklad Visual Basic .NET znázorňuje výstup s stejnou strukturu dokumentů XML.

Sloučit dokumenty XML, ve kterých jiné struktury

  1. Otevřete Books2.xml a nahradit následující XML 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. Uložit Books2.xml.
  3. Znovu spustit projektu Visual Basic .NET. Všimněte si, že jsou uzly z druhý dokument (Books2.xml) připojena k první dokument XML (Books1.xml).

Sloučit dokumenty XML s podobným kde Second dokumentu obsahuje další prvky konstrukce

  1. Otevřete Books2.xml a nahradit následující XML 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. Uložit Books2.xml.
  3. Znovu spustit projektu Visual Basic .NET. Všimněte si připojeny uzly z druhé dokumentu na první dokument XML.

Sloučit dokumenty XML s podobným struktura kde Second dokumentu obsahuje atributy

  1. Otevřete Books2.xml a nahradit následující XML 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. Uložit Books2.xml.
  3. Znovu spustit projektu Visual Basic .NET. Všimněte si, že jsou uzly z druhý dokument připojen k první dokument XML a struktura je stejný jako první dokument XML.

Sloučit dokumenty XML s podobným struktura kde první dokumentu obsahuje atributy

  1. Upravte kód jazyka způsobem, takže Books1.xml připojen Books2.xml:
            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. Znovu spustit projektu Visual Basic .NET. Všimněte si, že výsledná dokumentu XML připojí uzly z Books1.xml Books2.xml. Všimněte si navíc všechny uzly knihy obsahovat atribut "žánr".

    V závislosti na struktuře první dokument XML je tedy druhého dokumentu XML změněn, takže výsledná XML je smysluplnější.

Odkazy

Další informace naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
286817Postupy: Sloučení dat v dvěma dokumenty XML pomocí programování Document Object Model (DOM.)

Vlastnosti

ID článku: 308066 - Poslední aktualizace: 4. září 2003 - Revize: 2.3
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.1
Klíčová slova: 
kbmt kbhowtomaster KB308066 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:308066

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com