Freigeben über


Exemplarische Vorgehensweise: Einlesen von XML-Daten in ein Dataset

Aktualisiert: November 2007

ADO.NET stellt einfache Methoden für die Arbeit mit XML-Daten bereit. In dieser exemplarischen Vorgehensweise erstellen Sie eine Windows-Anwendung, durch die XML-Daten in ein Dataset geladen werden. Das Dataset wird anschließend in einer DataGridView angezeigt. Schließlich wird in einem Textfeld ein XML-Schema angezeigt, das auf dem Inhalt der XML-Datei basiert.

Diese exemplarische Vorgehensweise umfasst fünf Hauptschritte:

  1. Erstellen eines neuen Projekts

  2. Erstellen der in das Dataset einzulesenden XML-Datei

  3. Erstellen der Benutzeroberfläche

  4. Erstellen des Datasets, Lesen der XML-Datei und deren Anzeige in einem DataGridView-Steuerelement

  5. Hinzufügen von Code zum Anzeigen des XML-Schemas auf der Grundlage der XML-Datei in einem TextBox-Steuerelement

Hinweis:

In Abhängigkeit von den aktiven Einstellungen oder der Version unterscheiden sich die Dialogfelder und Menübefehle auf Ihrem Bildschirm möglicherweise von den in der Hilfe beschriebenen. Klicken Sie im Menü Extras auf Einstellungen importieren und exportieren, um die Einstellungen zu ändern. Weitere Informationen finden Sie unter Visual Studio-Einstellungen.

Erstellen eines neues Projekts

In diesem Schritt erstellen Sie ein Visual Basic-, Visual C#-, oder ein Visual J#-Projekt, das auf dieser exemplarischen Vorgehensweise basiert.

So erstellen Sie das neue Windows-Projekt

  1. Erstellen Sie im Menü Datei ein neues Projekt.

  2. Geben Sie dem Projekt den Namen ReadingXML.

  3. Wählen Sie Windows-Anwendung aus, und klicken Sie auf OK. Weitere Informationen finden Sie unter Erstellen von Windows-basierten Anwendungen.

    Das Projekt ReadingXML wird erstellt und zum Projektmappen-Explorer hinzugefügt.

Erstellen der in das Dataset einzulesenden XML-Datei

Da diese exemplarische Vorgehensweise das Einlesen von XML-Daten in ein Dataset behandelt, wird der Inhalt einer XML-Datei bereitgestellt.

So erstellen Sie die in das Dataset einzulesende XML-Datei

  1. Klicken Sie im Menü Projekt auf Neues Element hinzufügen.

  2. Wählen Sie XML-Datei aus, nennen Sie die Datei authors.xml, und klicken Sie auf Hinzufügen.

    Die XML-Datei wird in den Designer geladen und steht zur Bearbeitung bereit.

  3. Fügen Sie den folgenden Code in den Editor unter der XML-Deklaration ein:

    <Authors_Table>
      <authors>
        <au_id>172-32-1176</au_id>
        <au_lname>White</au_lname>
        <au_fname>Johnson</au_fname>
        <phone>408 496-7223</phone>
        <address>10932 Bigge Rd.</address>
        <city>Menlo Park</city>
        <state>CA</state>
        <zip>94025</zip>
        <contract>true</contract>
      </authors>
      <authors>
        <au_id>213-46-8915</au_id>
        <au_lname>Green</au_lname>
        <au_fname>Margie</au_fname>
        <phone>415 986-7020</phone>
        <address>309 63rd St. #411</address>
        <city>Oakland</city>
        <state>CA</state>
        <zip>94618</zip>
        <contract>true</contract>
      </authors>
      <authors>
        <au_id>238-95-7766</au_id>
        <au_lname>Carson</au_lname>
        <au_fname>Cheryl</au_fname>
        <phone>415 548-7723</phone>
        <address>589 Darwin Ln.</address>
        <city>Berkeley</city>
        <state>CA</state>
        <zip>94705</zip>
        <contract>true</contract>
      </authors>
      <authors>
        <au_id>267-41-2394</au_id>
        <au_lname>Hunter</au_lname>
        <au_fname>Anne</au_fname>
        <phone>408 286-2428</phone>
        <address>22 Cleveland Av. #14</address>
        <city>San Jose</city>
        <state>CA</state>
        <zip>95128</zip>
        <contract>true</contract>
      </authors>
      <authors>
        <au_id>274-80-9391</au_id>
        <au_lname>Straight</au_lname>
        <au_fname>Dean</au_fname>
        <phone>415 834-2919</phone>
        <address>5420 College Av.</address>
        <city>Oakland</city>
        <state>CA</state>
        <zip>94609</zip>
        <contract>true</contract>
      </authors>
    </Authors_Table>
    
  4. Zeigen Sie im Menü Datei auf authors.xml speichern.

Erstellen der Benutzeroberfläche

Die Benutzeroberfläche für diese Anwendung besteht aus folgenden Steuerelementen:

  • Ein DataGridView-Steuerelement, das den Inhalt der XML-Datei in Form von Daten anzeigt

  • Ein TextBox-Steuerelement, das das XML-Schema für die XML-Datei anzeigt

  • Zwei Button-Steuerelemente

    • Über eine Schaltfläche wird die XML-Datei in das Dataset eingelesen und im DataGridView-Steuerelement angezeigt.

    • Mit einer zweiten Schaltfläche wird das Schema aus dem Dataset extrahiert und über einen StringWriter im TextBox-Steuerelement angezeigt.

So fügen Sie dem Formular Steuerelemente hinzu

  1. Öffnen Sie Form1 in der Entwurfsansicht.

  2. Ziehen Sie folgende Steuerelemente aus der Toolbox auf das Formular:

  3. Legen Sie die folgenden Eigenschaften fest:

    Steuerelement

    Eigenschaft

    Einstellung

    TextBox1

    Multiline

    true

     

    ScrollBars

    Vertical

    Button1

    Name

    ReadXmlButton

     

    Text

    XML lesen

    Button2

    Name

    ShowSchemaButton

     

    Text

    Schema anzeigen

Erstellen des Datasets, das die XML-Daten empfängt

In dieser nächsten Prozedur wird das neue Dataset authors erstellt. Weitere Informationen über Datasets finden Sie unter Übersicht über Datasets in Visual Studio.

So erstellen Sie ein neues Dataset, das die XML-Daten empfängt

  1. Wählen Sie in Projektmappen-Explorer die Quelldatei für Form1 aus, und klicken Sie auf der Symbolleiste Projektmappen-Explorer auf die Schaltfläche Ansicht-Designer.

  2. Ziehen Sie ein Dataset aus der Registerkarte "Daten", Toolbox auf Form1.

  3. Wählen Sie im Dialogfeld "DataSet hinzufügen" die Option Nicht typisiertes DataSet aus, und klicken Sie anschließend auf OK.

    DataSet1 wird dem Komponentenfach hinzugefügt.

  4. Legen Sie im Eigenschaftenfenster die Name-Eigenschaft und die DataSetName-Eigenschaft auf AuthorsDataSet fest.

Erstellen des Ereignishandlers zum Einlesen der XML-Daten in das Dataset

Mit der Schaltfläche XML lesen wird die XML-Datei in das Dataset eingelesen. Außerdem werden die Eigenschaften für das DataGridView-Steuerelement festgelegt, mit der die Bindung an das Dataset erstellt wird.

So fügen Sie dem ReadXmlButton_Click-Ereignishandler Code hinzu

  1. Wählen Sie im Projektmappen-Explorer die Option Form1 aus, und klicken Sie auf der Symbolleiste Projektmappen-Explorer auf die Schaltfläche Designer-Ansicht.

  2. Doppelklicken Sie auf die Schaltfläche XML lesen.

    Der Code-Editor wird beim ReadXmlButton_Click-Ereignishandler geöffnet.

  3. Geben Sie den folgenden Code in den ReadXmlButton_Click-Ereignishandler ein:

    Private Sub ReadXmlButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
        Handles ReadXmlButton.Click
    
        Dim filePath As String = "Complete path where you saved the XML file"
    
        AuthorsDataSet.ReadXml(filePath)
    
        DataGridView1.DataSource = AuthorsDataSet
        DataGridView1.DataMember = "authors"
    End Sub
    
    private void ReadXmlButton_Click(object sender, EventArgs e)
    {
        string filePath = "Complete path where you saved the XML file";
    
        AuthorsDataSet.ReadXml(filePath);
    
        dataGridView1.DataSource = AuthorsDataSet;
        dataGridView1.DataMember = "authors";
    }
    
  4. Ändern Sie im ReadXMLButton_Click-Ereignishandlercode den filepath =-Eintrag in den richtigen Pfad.

Erstellen des Ereignishandlers zum Anzeigen des Schemas im Textfeld

Mit der Schaltfläche Schema anzeigen wird ein StringWriter-Objekt erstellt, das mit dem Schema gefüllt und in TextBox angezeigt wird.

So fügen Sie dem ShowSchemaButton_Click-Ereignishandler Code hinzu

  1. Wählen Sie im Projektmappen-Explorer die Option Form1 aus, und klicken Sie auf die Schaltfläche Ansicht-Designer.

  2. Doppelklicken Sie auf die Schaltfläche Schema anzeigen.

    Der Code-Editor wird beim ShowSchemaButton_Click-Ereignishandler geöffnet.

  3. Geben Sie den folgenden Code in den ShowSchemaButton_Click-Ereignishandler ein.

    Private Sub ShowSchemaButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
        Handles ShowSchemaButton.Click
    
        Dim swXML As New System.IO.StringWriter()
        AuthorsDataSet.WriteXmlSchema(swXML)
        TextBox1.Text = swXML.ToString
    End Sub
    
    private void ShowSchemaButton_Click(object sender, EventArgs e)
    {
        System.IO.StringWriter swXML = new System.IO.StringWriter();
        AuthorsDataSet.WriteXmlSchema(swXML);
        textBox1.Text = swXML.ToString();
    }
    

Testen

Sie können das Formular jetzt testen und prüfen, ob es sich wie wie erwartet verhält.

So testen Sie das Formular

  1. Drücken Sie F5, um die Anwendung auszuführen.

  2. Klicken Sie auf die Schaltfläche XML lesen.

    In der DataGridView wird der Inhalt der XML-Datei angezeigt.

  3. Klicken Sie auf die Schaltfläche Schema anzeigen.

    Im Textfeld wird das XML-Schema für die XML-Datei angezeigt.

Nächste Schritte

Diese exemplarische Vorgehensweise behandelt die Grundlagen für das Einlesen einer XML-Datei in ein Dataset sowie für das Erstellen eines Schemas, das auf dem Inhalt der XML-Datei basiert. Die folgenden Aufgaben könnten sich daran anschließen:

  • Bearbeiten der Daten im Dataset und Zurückschreiben der Daten als XML. Weitere Informationen finden Sie unter WriteXml.

  • Bearbeiten der Daten im Dataset und Zurückschreiben der Daten in eine Datenbank. Weitere Informationen finden Sie unter Speichern von Daten.

Siehe auch

Weitere Ressourcen

Exemplarische Vorgehensweisen zur Arbeit mit Daten

Zugreifen auf Daten (Visual Studio)

Vorbereiten der Anwendung auf den Empfang von Daten

XML-Tools in Visual Studio