Freigeben über


Tools in Visual Studio zum Erstellen von Datasets

In Visual Studio gibt es folgende Möglichkeiten, Datasets zu erstellen:

  • Den Komponenten-Designer, mit dem Sie Datenelemente von der Toolbox oder dem Server-Explorer auf ein Formular oder eine Komponente ziehen können. Visual Studio kann die Objekte erstellen, die Sie für ein Dataset benötigen, einschließlich eines Schemas basierend auf der Struktur der ursprünglichen Datenquelle. Wenn Sie ein Formular erstellen, erscheint der Komponenten-Designer als Fach am unteren Rand der Designeroberfläche. Mit dieser Methode können Sie sowohl typisierte als auch nicht typisierte Datasets erstellen.
  • Den XML-Designer, mit dem Sie ein Schema erstellen und ein darauf basierendes typisiertes Dataset generieren können.

Sie können Datasets auch dynamisch in Code erstellen. In diesem Fall ist das Dataset nicht typisiert. (Wenn Sie ein typisiertes Dataset aus einem Schema generiert haben, können Sie seine Struktur ebenfalls dynamisch im Code ändern.)

Hinweis   Wenn Sie eine Anwendung weitergeben, die Datenzugriffskomponenten von Visual Studio enthält, vergewissern Sie sich, dass der Benutzer, der die Anwendung installiert, Microsoft Data Access Components (MDAC) Version 2.7 oder höher verwendet. Weitere Informationen finden Sie unter Hinzufügen einer Startbedingung für Microsoft Data Access Components.

Schritte für das Generieren eines typisierten Datasets

Das Generieren eines typisierten Datasets erfordert mehrere einzelne Schritte:

  1. Wählen Sie ein XML-Schema (XSD-Datei) aus. Es gibt folgende Möglichkeiten, einem Projekt ein Schema hinzuzufügen:

    • Erstellen Sie ein Schema basierend auf der von Ihnen verwendeten Datenstruktur. Wenn Sie dem Formular oder der Komponente mit Hilfe des Komponenten-Designers einen Datenadapter hinzufügen, kann der Adapter die Struktur der Datenquelle lesen und sie in eine XSD-Datei umwandeln.

    • Erstellen Sie ein Schema manuell mit dem XML-Designer.

    • Erstellen Sie einen Verweis auf einen XML-Webdienst oder eine andere Komponente, die ein Dataset zurückgibt. Visual Studio erstellt als Teil des Verweises eine lokale Kopie des Schemas.

      Weitere Informationen zu Dataset-Schemas finden Sie unter XML-Schemas und Daten.

  2. Generieren Sie eine Dataset-Klasse. In diesem Schritt leitet Visual Studio eine Klasse von der DataSet-Basisklasse im System.Data-Namespace ab. Anschließend werden anhand der Informationen im Schema Member mit starker Typbindung erstellt, die den Datentabellen und Datenspalten für das Dataset entsprechen.

    Meistens erstellt Visual Studio diese Dataset-Klasse automatisch, wenn das Schema dem Projekt hinzugefügt wird.

  3. Erstellen Sie eine Instanz der abgeleiteten Dataset-Klasse (Schritt 2), um sie in einem Formular oder einer Komponente zu verwenden.

Wenn Sie ein Dataset in der Anwendung verwenden, arbeiten Sie eigentlich mit einer Instanz der Dataset-Klasse (wie die in Schritt 3 erstellte).

Verwenden des Komponenten-Designers

Im Allgemeinen verwenden Sie den Komponenten-Designer, wenn Visual Studio ein Schema und eine typisierte Dataset-Klasse erstellen soll. Fügen Sie dem Formular oder der Komponente im Komponenten-Designer einen oder mehrere Datenadapter hinzu. Mit Hilfe der Adapter werden Informationen zur Datenform im Dataset gespeichert (über ihre FillSchema-Methoden). Das Dataset kann die daraus entstandene Struktur anschließend als XML-Schema (XSD-Datei) in das Projekt schreiben. Zu diesem Zeitpunkt können Sie in Visual Studio eine Instanz der Klasse des typisierten Datasets erstellen lassen, die dem Formular bzw. der Komponente hinzugefügt wird.

Deshalb ist der Komponenten-Designer ein indirekter Weg, ein Dataset zu erstellen – die Tabellen und Spalten im Dataset werden nicht explizit definiert. Stattdessen definieren Sie sie implizit, indem Sie den Datenadapter konfigurieren. Dies tun Sie, indem Sie SQL-Abfragen oder gespeicherte Prozeduren festlegen, die der Adapter für den Datenaustausch mit der Datenquelle verwendet. Sie können auch die TableMappings-Eigenschaft des Adapters verwenden, um anzugeben, welche Spalten im Dataset enthalten sind und wie sie heißen.

Nach dem Konfigurieren des Datenadapters generieren Sie daraus das Dataset. Wenn Sie den Datenadapter nach dem Generieren des Datasets ändern, indem Sie beispielsweise die Tabellenzuordnung ändern, müssen Sie das Dataset neu generieren, damit diese Änderungen widergespiegelt werden.

Der Komponenten-Designer hat folgende Nachteile:

  • Sie haben zunächst keine Möglichkeit, das Schema direkt zu steuern. Sie können die Dataset-Definition nur steuern, indem Sie den Datenadapter konfigurieren, aus dem Visual Studio das Schema generiert. Nachdem das Schema generiert wurde, können Sie es jedoch mit dem XML-Designer bearbeiten.
  • Nach dem Ändern des Datenadapters müssen Sie das Schema (und die entsprechende Datei der Dataset-Klasse) manuell neu generieren. Wenn Sie beispielsweise die SQL-Anweisung ändern, mit der ein Dataset gefüllt wird, müssen Sie auch das Dataset-Schema ändern.
  • Es gibt einige Dataset-Funktionen, die Sie mit dem Komponenten-Designer allein nicht ausführen können, beispielweise des Definieren von DataRelation-Objekten. In diesem Fall müssen Sie den XML-Designer verwenden.

Verwenden des XML-Designers

Sie verwenden den XML-Designer, wenn Sie die Definition des Schemas besser steuern möchten oder das Schema nicht aus einer Datenquelle generiert werden kann. Es gibt zwei Möglichkeiten, ein Schema mit dem XML-Designer zu erstellen:

  • Ziehen Sie Datenelemente (z. B. Spaltennamen) vom Server-Explorer auf den Designer. Dadurch wird das Schema erstellt, das zunächst auf der Datenbankstruktur basiert, anschließend jedoch beliebig bearbeitet werden kann.
  • Erstellen Sie selbst eine Schemadatei. Diese Methode bietet sich an, wenn Sie ein Schema ohne Verweis auf eine externe Datenquelle entwerfen.

In beiden Fällen können Sie anschließend eine Instanz einer typisierten DataSet-Klasse basierend auf dem von Ihnen erstellten Schema generieren und sie für ein Formular oder eine Komponente verwenden.

Mit dem XML-Designer können Sie Elemente hinzufügen, entfernen oder bearbeiten. Darüber hinaus bietet der XML-Designer Funktionen (z. B. DataRelation-Objekte hinzufügen), die im Komponenten-Designer nicht zur Verfügung stehen.

Wenn Sie den XML-Designer verwenden, bearbeiten Sie eine XSD-Datei. Häufig enthält das Projekt auch eine Klassendatei eines typisierten Datasets, die auf der XSD-Datei basiert. Wenn Sie die Änderungen in der XSD-Datei speichern, wird die entsprechende Klassendatei neu generiert, damit das aktualisierte Schema darin widergespiegelt wird. Visual Studio synchronisiert die XSD- und die entsprechende Klassendatei, indem die Klassendatei neu generiert wird, sobald Sie Änderungen an der XSD-Datei vornehmen. Sie können diese Funktionalität deaktivieren, beispielsweise wenn Sie eine Schemadatei bearbeiten, für die Sie keine Klassendatei benötigen.

Der XML-Designer hat folgende Nachteile:

  • Der XML-Designer bietet eine geringfügig schlechtere Integration mit anderen Datentools in Visual Studio.
  • Die XSD-Datei wird nicht gegen externe Datenquellen validiert. Wenn Sie beispielsweise den XML-Designer verwenden, um ein Dataset-Schema zu bearbeiten, müssen Sie auch alle Datenadapter bearbeiten, die mit dem Dataset interagieren.
  • Es werden Grundkenntnisse im Umgang mit XML-Schemas und XML vorausgesetzt.

Siehe auch

Einführung in Datasets | Einführung in Datenadapter | Einführung in DataRelation-Objekte | Einführung in XML-Schemas | Erstellen typisierter Datasets mit dem Komponenten-Designer | Erstellen von XML-Schemas und Datasets | Hinzufügen nicht typisierter Datasets zu Formularen oder Komponenten | Exemplarische Vorgehensweisen zur Arbeit mit Daten