Speichern von Daten mit den TableAdapter DBDirect-Methoden in .NET Framework-Anwendungen
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.
Dieses Tutorial enthält detaillierte Anweisungen für das Ausführen von SQL-Anweisungen direkt an einer Datenbank mithilfe von DBDirect-Methoden einer TableAdapter-Instanz. Die DBDirect-Methoden eines TableAdapters bieten ein sehr gutes Maß an Kontrolle über Änderungen an der Datenbank. Sie können damit bestimmte SQL-Anweisungen und gespeicherte Prozeduren ausführen, indem Sie die einzelnen Insert
-, Update
- und Delete
-Methoden je nach Bedarf Ihrer Anwendung aufrufen (im Gegensatz zu der überladenen Update
-Methode, die die UPDATE
-, INSERT
- und DELETE
-Anweisungen in einem einzelnen Aufruf ausführt).
In diesem Tutorial werden Sie Folgendes erfahren:
Erstellen und Konfigurieren eines Datasets mit dem Assistenten zum Konfigurieren von Datenquellen.
Wählen Sie das Steuerelement aus, das für das Formular erstellt werden soll, wenn Elemente aus dem Datenquellenfenster gezogen werden. Weitere Informationen finden Sie unter Festlegen des Steuerelements, das beim Ziehen aus dem Datenquellenfenster erstellt werden soll.
Erstellen eines datengebundenen Formulars durch Ziehen von Elementen aus dem Datenquellenfenster auf das Formular.
Fügen Sie Methoden hinzu, um direkt auf die Datenbank zuzugreifen und Einfügungen, Aktualisierungen und Löschungen durchzuführen.
Voraussetzungen
Die Schritte in diesem Tutorial funktionieren mit Windows Forms-Anwendungen von .NET Framework.
In diesem Tutorial werden SQL Server Express LocalDB und die Northwind-Beispieldatenbank verwendet.
Wenn Sie nicht über SQL Server Express LocalDB verfügen, installieren Sie diese Komponente entweder über die SQL Server Express-Downloadseite oder über den Visual Studio-Installer. Im Visual Studio-Installer können Sie SQL Server Express LocalDB als Teil der Workload Datenspeicherung und -verarbeitung oder als einzelne Komponente installieren.
Installieren Sie die Northwind-Beispieldatenbank, indem Sie die folgenden Schritte ausführen:
Öffnen Sie in Visual Studio das Fenster SQL Server-Objekt-Explorer. (Der SQL Server-Objekt-Explorer wird als Teil der Workload für die Datenspeicherung und -verarbeitung im Visual Studio-Installer installiert.) Erweitern Sie den Knoten SQL Server. Klicken Sie mit der rechten Maustaste auf Ihre LocalDB-Instanz, und wählen Sie Neue Abfrage aus.
Ein Abfrage-Editor-Fenster wird geöffnet.
Kopieren Sie das Northwind-Transact-SQL-Skript in die Zwischenablage. Dieses T-SQL-Skript erstellt die Northwind-Datenbank von Grund auf neu und füllt sie mit Daten auf.
Fügen Sie das T-SQL-Skript in den Abfrage-Editor ein, und klicken Sie dann auf die Schaltfläche Ausführen.
Nach kurzer Zeit wird die Ausführung der Abfrage abgeschlossen, und die Northwind-Datenbank wird erstellt.
Erstellen einer Windows Forms-Anwendung
Im ersten Schritt wird eine Windows Forms-App (.NET Framework) erstellt. Erstellen Sie ein Projekt mithilfe des Projekttyps Windows Forms-App, indem Sie C# oder Visual Basic verwenden.
Hinweis
Der Code für dieses Tutorial ist in C# und Visual Basic verfügbar. Um die Codesprache auf dieser Seite zwischen C# und Visual Basic zu wechseln, verwenden Sie den Codesprachenumschalter oben rechts auf der Seite.
Erstellen einer Datenquelle aus einer Datenbank
Dieser Schritt verwendet den Assistenten zum Konfigurieren von Datenquellen auf Grundlage der Region
-Tabelle in der Beispieldatenbank Northwind. Sie benötigen Zugriff auf die Beispieldatenbank Northwind, um die Verbindung herstellen zu können. Informationen zum Einrichten der Northwind-Beispieldatenbank finden Sie unter Installieren von Beispieldatenbanken.
So erstellen Sie die Datenquelle
Klicken Sie im Menü Daten auf Datenquellen anzeigen.
Das Fenster Datenquellen wird geöffnet.
Wählen Sie im Datenquellenfenster die Option Neue Datenquelle hinzufügen aus, um den Assistenten zum Konfigurieren von Datenquellen zu starten.
Wählen Sie auf dem Bildschirm Datenquellentyp auswählen die Option Datenbank und dann Weiter aus.
Führen Sie auf dem Bildschirm Wählen Sie Ihre Datenverbindung einen der folgenden Schritte aus:
Wenn in der Dropdownliste eine Datenverbindung zur Beispieldatenbank „Northwind“ verfügbar ist, wählen Sie diese aus.
Oder
Klicken Sie auf Neue Verbindung, um das Dialogfeld Add/Modify Connection (Verbindung hinzufügen/ändern) zu öffnen.
Falls die Datenbank ein Kennwort erfordert, aktivieren Sie die Option für die Einbeziehung vertraulicher Daten, und wählen Sie dann Weiter aus.
Wählen Sie auf der Seite Verbindungszeichenfolge in der Anwendungskonfigurationsdatei speichern die Option Weiter aus.
Erweitern Sie auf dem Bildschirm Datenbankobjekte auswählen den Knoten Tabellen.
Wählen Sie die Tabelle
Region
und dann Fertig stellen aus.Das NorthwindDataSet wird Ihrem Projekt hinzugefügt, und die
Region
-Tabelle wird im Datenquellenfenster angezeigt.
Hinzufügen von Steuerelementen zum Formular für die Anzeige der Daten
Erstellen Sie die datengebundenen Steuerelemente, indem Sie Elemente aus dem Datenquellenfenster auf das Formular ziehen.
Um datengebundene Steuerelemente im Windows-Formular zu erstellen, ziehen Sie den Hauptknoten Region aus dem Fenster Datenquellen auf das Formular.
Auf dem Formular wird ein DataGridView-Steuerelement und ein Toolstrip (BindingNavigator) für die Navigation in den Datensätzen angezeigt. Ein NorthwindDataSet, RegionTableAdapter
, BindingSource und BindingNavigator werden auf der Komponentenleiste angezeigt.
Hinzufügen von Schaltflächen, die die einzelnen TableAdapter DbDirect-Methoden aufruft
Ziehen Sie drei Button-Steuerelemente aus der Toolbox auf Form1 (unter RegionDataGridView).
Legen Sie die folgenden Eigenschaften für Name und Text auf jeder Schaltfläche fest.
Name Text InsertButton
Einfügen UpdateButton
Aktualisieren DeleteButton
Löschen
Hinzufügen von Code für das Einfügen neuer Datensätze in die Datenbank
Wählen Sie InsertButton aus, um einen Ereignishandler für das Click-Ereignis zu erstellen, und öffnen Sie dann das Formular im Code-Editor.
Ersetzen Sie den Ereignishandler
InsertButton_Click
durch den folgenden Code:private void InsertButton_Click(object sender, EventArgs e) { Int32 newRegionID = 5; String newRegionDescription = "NorthEastern"; try { regionTableAdapter1.Insert(newRegionID, newRegionDescription); } catch (Exception ex) { MessageBox.Show("Insert Failed"); } RefreshDataset(); } private void RefreshDataset() { this.regionTableAdapter1.Fill(this.northwindDataSet1.Region); }
Hinweis
Je nach Ihrer Visual Studio-Version und den verwendeten Projektvorlagen weisen die Variablennamen wie
regionTableAdapter
oderregionTableAdapter1
, die in diesem Code verwendet werden, möglicherweise eine nachstehende 1 im generierten Code auf. Nehmen Sie eventuelle Korrekturen in Ihrem Code vor, um sicherzustellen, dass überall der richtige Name verwendet wird. Visual Studio zeigt eine rote Wellenlinie an, wenn der Name falsch ist.
Hinzufügen von Code für die Aktualisierung von Datensätzen in der Datenbank
Doppelklicken Sie UpdateButton, sodass ein Ereignishandler für Click-Ereignis erstellt wird, und öffnen Sie das Formular im Code-Editor.
Ersetzen Sie den Ereignishandler
UpdateButton_Click
durch den folgenden Code:
So fügen Sie Code für das Löschen von Datensätzen aus der Datenbank hinzu
Wählen Sie DeleteButton aus, um einen Ereignishandler für das Click-Ereignis zu erstellen, und öffnen Sie dann das Formular im Code-Editor.
Ersetzen Sie den Ereignishandler
DeleteButton_Click
durch den folgenden Code:
Ausführen der Anwendung
Drücken Sie F5, um die Anwendung auszuführen.
Wählen Sie die Schaltfläche Einfügen aus und stellen Sie sicher, dass der neue Datensatz im Raster angezeigt wird.
Wählen Sie die Schaltfläche Aktualisieren aus und stellen Sie sicher, dass der Datensatz im Raster aktualisiert wurde.
Wählen Sie die Schaltfläche Löschen aus und stellen Sie sicher, dass der Datensatz aus dem Raster entfernt wurde.
Nächste Schritte
Entsprechend den Anforderungen an Ihre Anwendung können Sie nach der Erstellung eines datengebundenen Formulars noch weitere Schritte ausführen. Einige Verbesserungen, die Sie an diesem Tutorial vornehmen können, sind:
Fügen Sie dem Formular Suchfunktionalität hinzu.
Hinzufügen weiterer Tabellen zum Dataset durch Auswählen von DataSet mit Assistent konfigurieren aus dem Datenquellenfenster. Sie können Steuerelemente hinzufügen, die zugehörige Daten anzeigen, indem Sie die entsprechenden Knoten auf das Formular ziehen. Weitere Informationen finden Sie unter Beziehungen zwischen Datasets.