Erstellen und Konfigurieren von Datasets in .NET Framework mit Visual Studio
Hinweis
Datasets und verwandte Klassen sind ältere .NET-Technologien aus den frühen 2000er Jahren, die es Anwendungen ermöglichen, mit Daten im Arbeitsspeicher zu arbeiten, während die Anwendungen von der Datenbank getrennt sind. Die Technologien sind besonders nützlich für Anwendungen, die es Benutzern ermöglichen, Daten zu ändern und die Änderungen wieder in der Datenbank zu speichern. Obwohl sich Datasets als sehr erfolgreiche Technologie erwiesen haben, empfehlen wir, dass neue .NET-Anwendungen Entity Framework Core verwenden. Entity Framework bietet eine natürlichere Möglichkeit, mit tabellarischen Daten als Objektmodelle zu arbeiten, und verfügt über eine einfachere Programmierschnittstelle.
Ein Dataset ist ein Satz von Objekten, die Daten aus einer Datenbank im Arbeitsspeicher speichern und die Änderungsnachverfolgung unterstützen, um Vorgänge zum Erstellen, Lesen, Aktualisieren und Löschen (CRUD) dieser Daten zu ermöglichen, ohne dass Sie ständig mit der Datenbank verbunden sein müssen. Datasets wurden für einfache formular- und datenbasierte Geschäftsanwendungen entwickelt. Für neue Anwendungen sollten Sie Entity Framework verwenden, um Daten im Arbeitsspeicher zu speichern und zu modellieren. Für die Arbeit mit Datasets sollten Sie über grundlegende Kenntnisse von Datenbankkonzepten verfügen.
Sie können eine typisierte DataSet-Klasse in Visual Studio zur Entwurfszeit mithilfe des Assistenten zum Konfigurieren von Datenquellen erstellen. Informationen zum programmgesteuerten Erstellen von Datasets finden Sie unter Erstellen eines Datasets (ADO.NET).
Voraussetzungen
Ein .NET Framework-Projekt (nicht .NET Core bzw. .NET 5 oder höher)
Visual Studio mit installierter .NET-Desktopentwicklung und installierten Workloads für Datenspeicherung und -verarbeitung. Um diese zu installieren, öffnen Sie Visual Studio-Installer und wählen Ändern (oder Weitere>Ändern) neben der Version von Visual Studio aus, die Sie ändern möchten.
SQL Server Express LocalDB. Wenn Sie nicht über SQL Server Express LocalDB verfügen, können Sie es über die SQL Server-Downloadseite installieren.
Erstellen eines neuen Datasets mithilfe des Assistenten zum Konfigurieren von Datenquellen
Öffnen Sie Ihr Projekt in Visual Studio, und wählen Sie dann Projekt>Neue Datenquelle hinzufügen aus, um den Assistenten zum Konfigurieren von Datenquellen zu starten.
Wählen Sie den Typ der Datenquelle aus, mit der Sie eine Verbindung herstellen möchten.
Wählen Sie
DataSet
aus der Liste der Optionen aus.Wählen Sie die Datenbank(en) aus, die als Datenquelle für Ihr Dataset dienen soll(en).
Wählen Sie aus, ob die Verbindungszeichenfolge in app.config gespeichert werden soll.
Wählen Sie die Tabellen (oder einzelne Spalten), gespeicherte Prozeduren, Funktionen und Sichten aus der Datenbank aus, die im Dataset dargestellt werden sollen.
Klicken Sie auf Fertig stellen.
Das Dataset wird im Projektmappen-Explorer als Knoten angezeigt.
Klicken Sie im Projektmappen-Explorer auf den Datasetknoten, um das Dataset im DataSet-Designer zu öffnen. Jede Tabelle im Dataset weist ein zugeordnetes
TableAdapter
-Objekt auf, das am unteren Rand dargestellt wird. Der Tabellenadapter wird verwendet, um das Dataset aufzufüllen und optional Befehle an die Datenbank zu senden.Die Beziehungslinien, die die Tabellen verbinden, stellen Tabellenbeziehungen dar, wie in der Datenbank definiert. Standardmäßig werden Fremdschlüsseleinschränkungen in einer Datenbank nur als Beziehung dargestellt, wobei die Aktualisierungs- und Löschregeln auf „Keine“ festgelegt sind. Normalerweise ist es das, was Sie wünschen. Sie können jedoch auf die Linien klicken, um das Dialogfeld Beziehung anzuzeigen, in dem Sie das Verhalten von hierarchischen Updates ändern können. Weitere Informationen finden Sie unter Beziehungen in Datasets und Hierarchisches Update.
Klicken Sie in einer Tabelle auf einen Tabellen-, Tabellenadapter- oder Spaltennamen, um dessen Eigenschaften im Fenster Eigenschaften anzuzeigen. Sie können einige der Werte hier ändern. Denken Sie nur daran, dass Sie das Dataset ändern, nicht die Quelldatenbank.
Sie können dem Dataset neue Tabellen oder Tabellenadapter hinzufügen oder neue Abfragen für vorhandene Tabellenadapter hinzufügen oder neue Beziehungen zwischen Tabellen angeben, indem Sie diese Elemente von der Registerkarte Toolbox ziehen. Diese Registerkarte wird angezeigt, wenn der DataSet-Designer den Fokus besitzt.
Als nächstes möchten Sie vielleicht angeben, wie das Dataset mit Daten gefüllt werden soll. Dazu verwenden Sie den Assistenten für TableAdapter-Konfigurationen. Weitere Informationen finden Sie unter Füllen von Datasets mit TableAdapters.
Hinzufügen einer Datenbanktabelle oder eines anderen Objekts zu einem vorhandenen Dataset
Dieses Verfahren zeigt, wie Sie eine Tabelle aus derselben Datenbank hinzufügen, die Sie zum ersten Erstellen des Datasets verwendet haben.
Klicken Sie im Projektmappen-Explorer auf den Datasetknoten, um den DataSet-Designer in den Fokus zu bringen.
Klicken Sie am linken Rand von Visual Studio auf die Registerkarte Datenquellen, oder geben Sie Datenquellen in das Suchfeld ein.
Klicken Sie mit der rechten Maustaste auf den Datasetknoten, und wählen Sie Datenquelle mit Assistenten konfigurieren aus.
Verwenden Sie den Assistenten, um anzugeben, welche zusätzlichen Tabellen, gespeicherten Prozeduren oder anderen Datenbankobjekte dem Dataset hinzugefügt werden sollen.
Hinzufügen einer eigenständigen Datentabelle zu einem Dataset
Öffnen Sie das Dataset im DataSet-Designer.
Ziehen Sie eine DataTable-Klasse von der Registerkarte Dataset der Toolbox in den DataSet-Designer.
Fügen Sie Spalten hinzu, um die Datentabelle zu definieren. Klicken Sie mit der rechten Maustaste auf die Tabelle, und wählen Sie Hinzufügen>Spalte aus. Verwenden Sie das Fenster Eigenschaften, um den Datentyp der Spalte und bei Bedarf einen Schlüssel festzulegen.
Eigenständige Tabellen müssen eine Fill
-Logik in implementieren, damit Sie sie mit Daten auffüllen können. Informationen zum Auffüllen von Datentabellen finden Sie unter Auffüllen eines Datasets durch einen DataAdapter.