Einstieg in ADO.NET - EDV

Werbung
Kapitel 1
Einstieg in ADO.NET
In diesem Kapitel:
Überblick über die Zusammenhänge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Das ADO.NET-Objektmodell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Ein einfaches datengebundenes Formular erstellen . . . . . . . . . . . . . . . . . 26
Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
In diesem Kapitel lernen Sie, wie Sie
쐽 die wichtigsten Objekte von Microsoft ADO.NET und deren Interaktion nutzen.
쐽 mit dem Assistenten zum Konfigurieren von Datenquellen eine Datenquelle
erstellen.
쐽 mit dem Fenster »Datenquelle« ein einfaches datengebundenes Formular
anlegen.
Wie die anderen Komponenten des Microsoft .NET Frameworks besteht auch Microsoft
ADO.NET aus Objekten, die die benötigte Funktionalität dadurch bereitstellen, dass sie
miteinander interagieren. Leider kann durch diese Interaktion leicht der Eindruck entstehen, dass man zuerst das gesamte Modell kennen muss, bevor man einzelne Teile davon
verstehen kann. Die Verwendung des Objektmodells kann daher u. U. frustrierend sein.
Die Lösung dieses Problems besteht in der Bildung eines konzeptionellen Rahmens. Mit
anderen Worten, bevor Sie sich mit den speziellen Funktionen eines Objekts befassen, sollten Sie den Verwendungszweck der einzelnen Objekte und ihre Interaktion kennen lernen.
Dies geschieht in diesem Kapitel. Zunächst werden die zentralen ADO.NET-Objekte vorgestellt, und es wird gezeigt, wie die Objekte zusammenarbeiten, um Daten aus einem physischen Datenspeicher abzurufen, diese dem Datenkonsumenten zur Verfügung zu stellen
und Daten im Datenspeicher abzulegen.
Überblick über die Zusammenhänge
Microsoft Visual Studio 2005 und Microsoft .NET Framework 2.0 erleichtern die Erstellung einfacher datengebundener Formulare enorm. Es ist jetzt ohne jede Programmierung
möglich, ein Microsoft Windows Form zu erstellen, das grundlegende Datenbearbeitungsfunktionen bereitstellt, in dem also Datenelemente angezeigt und bearbeitet, die Zeilen
einer Tabelle durchsucht, neue Zeilen hinzugefügt und vorhandene Zeilen gelöscht werden können. Ein Beispiel hierfür wird weiter hinten in diesem Kapitel vorgestellt.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
22
Teil A:
Einführung in ADO.NET
Hinweis Text wie dieser verweist Sie auf die Stelle, an der Sie eine ausführliche
Beschreibung der Methode oder Eigenschaft finden, die bisher noch nicht erklärt
wurde.
In späteren Kapiteln werden nacheinander die einzelnen Objekte des ADO.NET-Objektmodells beschrieben – zumindest theoretisch. Weil die Objekte so eng miteinander verbunden sind, ist es eigentlich unmöglich, sie isoliert zu betrachten. Falls eine Methode
oder eine Eigenschaft eingesetzt werden muss, die noch nicht beschrieben wurde, finden Sie einen entsprechenden Hinweis in der Marginalspalte, dem Sie entnehmen
können, welches Kapitel eine ausführlichere Beschreibung enthält.
Das ADO.NET-Objektmodell
Die folgende Abbildung 1.1 enthält eine vereinfachte Darstellung der zentralen Objekte
des ADO.NET-Objektmodells. Natürlich ist die Klassenbibliothek in Wirklichkeit
wesentlich komplizierter, auf die Feinheiten gehen wir jedoch später ein. Momentan
reicht es aus, wenn Sie die zentralen Objekte kennen und wissen, wie diese üblicherweise miteinander interagieren.
ADO.NET
Datenkonsumenten
Datenprovider
Adapter
Connection
DataSet
Command
Reader
WinForm
WebForm
Andere Provider
Abbildung 1.1 Das ADO.NET-Objektmodell
Die Klassen von ADO.NET lassen sich in zwei Komponenten unterteilen: Die Datenprovider (gelegentlich auch Managed Provider genannt), die für die Kommunikation mit
einem physischen Datenspeicher zuständig sind, und das DataSet, das die eigentlichen
Daten repräsentiert. Jede Komponente kann mit Datenkonsumenten wie WebFormsund Windows Forms kommunizieren
Datenprovider
Die Datenprovider-Komponenten sind jeweils auf eine Datenquelle zugeschnitten. Das
.NET Framework beinhaltet vier Datenprovider:
1.
einen allgemeinen Provider, der mit jeder OLE DB-Datenquelle kommunizieren
kann,
2.
einen SQL Server-Provider, der auf Microsoft SQL Server 7.0 und höher zugeschnitten ist,
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
Kapitel 1: Einstieg in ADO.NET
3.
einen ODBC-Provider, der für ODBC-Datenquellen optimiert wurde,
4.
einen Oracle-Provider, der für Oracle-Datenbanken optimiert wurde.
23
Zudem können Sie selbst Datenprovider erstellen. (Sie werden wahrscheinlich erleichtert sein, wenn Sie erfahren, dass die Erstellung von Providern in diesem Buch nicht
behandelt wird.)
Die im .NET Framework enthaltenen Datenprovider beinhalten zwar dieselben
Objekte, ihre Namen und einige ihrer Eigenschaften und Methoden unterscheiden sich
jedoch. Beispielsweise heißt das SQL Server-Objekt, das eine Datenbankverbindung
repräsentiert, SQLConnection, wohingegen das entsprechende OLE DB-Objekt OleDbConnection heißt.
Hinweis Verbindungen werden in Kapitel 2 eingehend behandelt.
Das Connection-Objekt repräsentiert die physische Verbindung zu einer Datenquelle.
Seine Eigenschaften legen den Datenprovider (beim OLE DB-Provider), die Datenquelle,
die Datenbank, zu der eine Verbindung hergestellt wird und die Zeichenfolge fest, die
zum Aufbau der Verbindung benutzt wird. Die Methoden sind recht einfach: Eine Verbindung kann hergestellt und beendet werden; die Datenbank kann gewechselt werden
und Transaktionen können verwaltet werden.
Hinweis Command-Objekte werden in Kapitel 3 detaillierter beschrieben.
Das Command-Objekt repräsentiert eine SQL-Anweisung oder eine gespeicherte Prozedur, die auf die Datenquelle angewendet werden kann. Command-Objekte können
erstellt und voneinander unabhängig auf ein Connection-Objekt angewendet werden.
DataAdapter- und TableAdapter-Objekte verwalten mithilfe von Command-Objekten die
Kommunikation zwischen einem DataSet und einer Datenquelle. Command-Objekte
unterstützen SQL-Anweisungen und gespeicherte Prozeduren, die einzelne Werte, eine
oder mehrere Zeilen oder gar keine Werte zurückgeben.
Hinweis DataReader-Objekte werden in Kapitel 4 behandelt.
Mit einem DataReader-Objekt wird ein schneller vorwärtsgerichteter, schreibgeschützter
Datenstrom von einer Datenquelle erzeugt. DataReader-Objekte können nicht direkt im
Programmcode angelegt werden, sondern müssen über die ExecuteReader-Methode
eines Command-Objekts erstellt werden.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
24
Teil A:
Einführung in ADO.NET
Hinweis Adapter werden in Kapitel 5 und 8 erläutert.
In ADO.NET 1.0 ist nur ein Typ von Adapter, das DataAdapter-Objekt, verfügbar.
ADO.NET 2.0 stellt dagegen zwei Adapter bereit. Das DataAdapter-Objekt wird noch
unterstützt und wurde um ein neues Objekt, das TableAdapter-Objekt, ergänzt.
Das DataAdapter-Objekt ist funktional gesehen das komplexeste Objekt eines Datenproviders. Es ermöglicht die Verbindung zwischen einem Connection- und einem DataSetObjekt. Das DataAdapter-Objekt enthält vier Command-Objekte: SelectCommand, UpdateCommand, InsertCommand und DeleteCommand. Das DataAdapter-Objekt verwendet das
SelectCommand-Objekt, um das DataSet zu füllen und die restlichen drei CommandObjekte, um bei Bedarf Änderungen an die Datenquelle zu übertragen.
Auch wenn diese Analogie nicht ganz stimmig ist, können Sie TableAdapter-Objekte als
stark typisierte DataAdapter-Objekte betrachten. Mit der SelectCommand-Eigenschaft
eines DataAdapter-Objekts können zur Laufzeit beliebige Daten aus der in der Connection-Eigenschaft angegebenen Tabelle abgerufen werden. Ein TableAdapter-Objekt ist
jedoch spezifisch für ein DataTable-Objekt in einem typisierten DataSet-Objekt.
Ein TableAdapter-Objekt enthält als private Eigenschaften sowohl ein DataAdapterObjekt als auch ein Connection-Objekt und überdies zusätzliche Funktionen, die es
erleichtern, eine Verbindung zu einer Datenquelle herzustellen und diese effizient zu
nutzen.
Microsoft ActiveX Data Objects (ADO)
Auf funktionaler Ebene entsprechen Connection- und Command-Objekte im großen und ganzen ihren ADO-Gegenstücken. Das DataReader-Objekt fungiert dagegen als Firehose-Cursor. Für DataAdapter-, TableAdapter- und DataSet-Objekte
gibt es in ADO keine Entsprechung.
DataSet-Objekte
Hinweis DataSet-Objekte und die zugehörigen Komponentenauflistungen werden in
Kapitel 7 und 8 behandelt.
Ein DataSet-Objekt ist ein speicherresidentes Datenabbild. Seine Struktur wird in Abbildung 1.2 dargestellt. Das DataSet kann als vereinfachte relationale Datenbank betrachtet
werden, die aus Tabellen und ihren Verbindungen besteht. Wichtig ist jedoch, dass das
DataSet nie mit der Datenquelle verknüpft ist, d. h. es »weiß« nicht, woher die Daten
stammen, die es enthält, und es kann sogar Daten aus mehreren Quellen enthalten.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
Kapitel 1: Einstieg in ADO.NET
25
Abbildung 1.2 Struktur des DataSet-Objekts
Das DataSet setzt sich aus zwei Objekten zusammen: Dem DataTableCollection-Objekt,
auf das über die Tables-Eigenschaft zugegriffen wird, und das DataRelationCollection, auf
das über die Relations-Eigenschaft zugegriffen wird. Das DataTableCollection-Objekt enthält Null oder mehr DataTable-Objekte, die ihrerseits aus drei Auflistungen bestehen:
DataColumnCollection, DataRowCollection und Constraint-Collection. Das DataRelationCollection-Objekt enthält Null oder mehr DataRelation-Objekte.
Das DataTableCollection-Objekt
Hinweis DataColumns-Objekte werden in Kapitel 7 besprochen.
Das DataColumnCollection-Objekt eines DataTable-Objekts definiert die Spalten, aus
denen sich das DataTable-Objekt zusammensetzt. Neben den Eigenschaften ColumnName und DataType kann mit den DataColumn-Eigenschaften die Zulässigkeit von Nullen (AllowDBNull), die maximale Länge (MaxLength) und sogar ein Ausdruck definiert
werden, mit dem der Wert berechnet wird (Expression).
Hinweis DataRows-Objekte werden in Kapitel 8 besprochen.
Die DataRowCollection-Auflistung des DataTable-Objekts, die auch leer sein kann, enthält die eigentlichen Daten, die von der DataColumnCollection-Auflistung definiert werden. Das DataTable-Objekt enthält die ursprünglichen, aktuellen und vorgeschlagenen
Werte jedes DataRow-Objekts. Wie Sie noch sehen werden, werden dadurch bestimmte
Programmieraufgaben erheblich vereinfacht, z. B. in einem Programm dem Benutzer die
Möglichkeit zu geben, Änderungen zu verwerfen, die sie an einer Datenzeile (einem
DataRow-Objekt) vorgenommen haben.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
26
Teil A:
Einführung in ADO.NET
ADO
Das DataTable-Objekt von ADO.NET entspricht dem Recordset-Objekt von ADO,
spielt im Objektmodell jedoch eine ganz andere Rolle.
Hinweis Constraint-Objekte werden in Kapitel 7 besprochen.
Die ConstraintCollection-Auflistung eines DataTable-Objekts enthält Null oder mehr
Einschränkungen. Wie bei einer relationalen Datenbank dienen Einschränkungen zur
Wahrung der Datenintegrität. ADO.NET unterstützt zwei Arten von Einschränkungen:
Fremdschlüsseleinschränkungen (ForeignKeyContraints) und Unique-Einschränkungen
(UniqueConstraints). Fremdschlüsseleinschränkungen gewährleisten die relationale Integrität, d. h. sie stellen sicher, dass eine untergeordnete Zeile einer Datentabelle (DataTable) nicht verwaisen kann. Unique-Einschränkungen gewährleisten die Datenintegrität, d. h. sie stellen sicher, dass keine Duplikate einer Zeile zur Tabelle (DataTable)
hinzugefügt werden können. (Durch die PrimaryKey-Eigenschaft des DataTable-Objekts
wird die Integrität der gesamten Tabelle sichergestellt, da sie die Eindeutigkeit jeder
Datenzeile erzwingt.)
Das DataRelationCollection-Objekt
Hinweis DataRelations-Objekte werden in Kapitel 7 besprochen.
Die DataRelationCollection-Auflistung eines DataSet-Objekts enthält Null oder mehr
DataRelation-Objekte. DataRelation-Objekte stellen eine einfache Programmierschnittstelle für die Navigation zwischen einer Zeile in einer Tabelle und den damit verknüpften Zeilen in einer anderen Tabelle bereit. Beispielsweise lassen sich bei einer Tabelle
namens Bestellungen über das DataRelation-Objekt ganz einfach die damit verknüpften
Zeilen aus der Tabelle Bestelldetails abrufen. Das DataRelation-Objekt selbst erzwingt die
relationale Integrität allerdings nicht. Zu diesem Zweck muss eine Fremdschlüsseleinschränkung eingesetzt werden.
Ein einfaches datengebundenes Formular
erstellen
Der Vorgang, mit dem Daten an ein Formular gebunden werden, wird als Datenbindung
bezeichnet. Die Datenbindung kann zwar auch mit Programmcode durchgeführt werden, die integrierte Entwicklungsumgebung (Integrated Development Environment,
IDE) von Microsoft Visual Studio .NET und das neue TableAdapter-Objekt vereinfachen
diesen Vorgang jedoch sehr. In diesem Abschnitt werden Sie mit den Designern und
Assistenten von Visual Studio ein einfaches, datengebundenes Windows Form erstellen.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
Kapitel 1: Einstieg in ADO.NET
27
Wichtig Falls Sie die Übungsdateien zum Buch noch nicht installiert haben, sollten Sie
nun den Abschnitt »Installation der Übungsdateien« in der Einführung durcharbeiten
und dann zu diesem Kapitel zurückkehren.
Eine Datenquelle konfigurieren
Der erste Schritt bei der Datenbindung besteht darin, eine Datenquelle für das Projekt
zu erstellen. Visual Studio stellt hierfür den Assistenten zum Konfigurieren von Datenquellen bereit, mit dem sich dieser Vorgang ganz einfach durchführen lässt.
Dem Projekt eine Datenquelle hinzufügen
1.
Starten Sie Visual Studio.
2.
Öffnen Sie das Projekt Kapitel 01 – Anfang, und doppelklicken Sie, falls notwendig, auf Employees.vb (bzw. Employees.cs, wenn Sie mit C# arbeiten), um das Formular zu öffnen.
Visual Studio zeigt das Formular an (siehe Abbildung 1.3).
Abbildung 1.3 Das Formular Employees.vb in Visual Studio
3.
Wählen Sie im Menü Daten den Befehl Neue Datenquelle hinzufügen.
Visual Studio öffnet den Assistenten zum Konfigurieren von Datenquellen (siehe
Abbildung 1.4).
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
28
Teil A:
Einführung in ADO.NET
Abbildung 1.4 Assistent zum Konfigurieren von Datenquellen
Tipp Der Befehl Neue Datenquelle hinzufügen ist auch im Fenster Datenquellen
verfügbar. Um das Fenster Datenquellen zu öffnen, wählen Sie im Menü Daten
den Befehl Datenquellen anzeigen.
4.
Übernehmen Sie die Standardeinstellung Datenbank als Datenquellentyp, und
klicken Sie dann auf Weiter.
Der Assistent zum Konfigurieren von Datenquellen zeigt eine Seite an, auf der Sie
eine Verbindung auswählen sollen (siehe Abbildung 1.5).
Abbildung 1.5 Datenverbindung auswählen oder neu erstellen
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
Kapitel 1: Einstieg in ADO.NET
5.
29
Klicken Sie auf Neue Verbindung.
Das Dialogfeld Datenquelle auswählen wird angezeigt (siehe Abbildung 1.6).
Abbildung 1.6 Das Dialogfeld Datenquelle auswählen
Tipp Wenn das Dialogfeld Verbindung hinzufügen angezeigt wird, klicken Sie
auf Ändern, um das Dialogfeld Datenquelle wechseln zu öffnen.
6.
Wählen Sie Microsoft SQL Server aus, deaktivieren Sie das Kontrollkästchen Immer
diese Auswahl verwenden, und klicken Sie dann auf Weiter.
Das Dialogfeld Verbindung hinzufügen wird angezeigt (siehe Abbildung 1.7).
Abbildung 1.7 Das Dialogfeld Verbindung hinzufügen
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
30
Teil A:
7.
Einführung in ADO.NET
Geben Sie im Feld Servername den Namen (local)\SQLEXPRESS ein.
Der Eintrag (local) bezeichnet den lokalen Computer, und SQLEXPRESS ist der
Name der SQL Server-Instanz.
Wichtig Dieses Buch und die zugehörigen Beispiele sind für die Verwendung
einer Standardinstallation von Microsoft SQL Server 2005 Express Edition konzipiert, deren Instanzenname SQLEXPRESS lautet. Wenn Sie dieses Buch mit
einem anderen SQL Server-Instanzennamen oder der Vollversion von SQL Server verwenden möchten, müssen Sie die Übungsschritte und die Verbindungszeichenfolgen entsprechend anpassen.
8.
Wählen Sie in der Dropdownliste unter Wählen Sie einen Datenbanknamen aus,
oder geben Sie einen ein die Datenbank AdoStepByStep aus (siehe Abbildung 1.8).
Abbildung 1.8 Hier wählen Sie die Datenbank AdoStepByStep aus
Wichtig Wenn der Datenbankname AdoStepByStep nicht in der Liste aufgeführt wird, überprüfen Sie nochmals, ob Sie die in der Einführung beschriebene
Anleitung zur Installation der Quelltextbeispiele korrekt befolgt haben.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
Kapitel 1: Einstieg in ADO.NET
9.
31
Klicken Sie im Dialogfeld Verbindung hinzufügen auf OK, und klicken Sie auf der
Seite Assistent zum Konfigurieren von Datenquellen auf Weiter.
Der Assistent zum Konfigurieren von Datenquellen zeigt nun eine Seite mit der
Option an, die Verbindungszeichenfolge in der Anwendungskonfigurationsdatei
zu speichern (siehe Abbildung 1.9).
Abbildung 1.9 Die Verbindungszeichenfolge soll nicht gespeichert werden
10.
Stellen Sie sicher, dass das Kontrollkästchen Ja, Verbindung speichern unter deaktiviert ist, und klicken Sie dann auf Weiter.
Nach einigen Sekunden zeigt der Assistent zum Konfigurieren von Datenquellen
die in der Datenbank enthaltenen Objekte an.
11.
Erweitern Sie den Knoten Tabellen, und wählen Sie Employees aus (siehe Abbildung 1.10).
12.
Klicken Sie auf Fertig stellen.
Der Assistent zum Konfigurieren von Datenquellen fügt die neue Datenquelle
dem Fenster Datenquellen hinzu (siehe Abbildung 1.11).
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
32
Teil A:
Einführung in ADO.NET
Abbildung 1.10 Datenbankobjekt Employees auswählen
Abbildung 1.11 Die neue Datenquelle wird im Fenster Datenquellen angezeigt
Tipp Wenn das Fenster Datenquellen nicht geöffnet ist, wählen Sie im Menü
Daten den Befehl Datenquellen anzeigen, um es zu öffnen.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
Kapitel 1: Einstieg in ADO.NET
33
Mit dem Fenster Datenquellen arbeiten
Nachdem eine Datenquelle eingerichtet wurde, können Sie das Fenster Datenquellen
benutzen, um eine Vorschau der Daten zu betrachten und datengebundene Steuerelemente einem Formular hinzuzufügen, indem Sie einfach eine Tabelle oder Spalte auf die
Entwurfsoberfläche des Formulars ziehen. Sie können den Steuerelementtyp festlegen,
indem Sie den Tabellen- oder Spaltennamen markieren und eine Dropdownliste mit
den verfügbaren Steuerelementtypen öffnen.
Vorschau von Tabellendaten
1.
Doppelklicken Sie im Projektmappen-Explorer auf AdoStepByStepDataSet.xsd.
Visual Studio zeigt das DataSet im DataSet-Designer an (siehe Abbildung 1.12).
Abbildung 1.12 Die Tabelle Employees
2.
Klicken Sie mit der rechten Maustaste auf die Tabelle Employees, und wählen Sie
im Kontextmenü den Befehl Datenvorschau.
Visual Studio zeigt das Dialogfeld Datenvorschau an (siehe Abbildung 1.13).
3.
Klicken Sie auf die Schaltfläche Vorschau.
Visual Studio zeigt den Inhalt der Tabelle an (siehe Abbildung 1.14).
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
34
Teil A:
Einführung in ADO.NET
Abbildung 1.13 Das Dialogfeld Datenvorschau
Abbildung 1.14 Die Datenvorschau der Tabelle Employees
4.
Schließen Sie das Dialogfeld.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
Kapitel 1: Einstieg in ADO.NET
35
Den Standardsteuerelementtyp einer Spalte ändern
1.
Wechseln Sie zurück zum Formular Employees, indem Sie auf Employees.vb [Entwurf] (bzw. Employees.cs [Entwurf], wenn Sie mit C# arbeiten) doppelklicken.
2.
Erweitern Sie im Fenster Datenquellen den Tabellenknoten Employees, markieren
Sie EmployeeID, und erweitern Sie das Dropdownfeld (siehe Abbildung 1.15).
Abbildung 1.15 Dropdownliste mit Steuerelementtypen
3.
Wählen Sie in der Liste den Eintrag Label aus.
Der Standardsteuerelementtyp für diese Spalte wird daraufhin geändert.
Tipp Sie können den Standardsteuerelementtyp für alle Spalten eines
bestimmten Datentyps im Dialogfeld Optionen ändern, das Sie über das Menü
Extras von Visual Studio öffnen.
Ein datengebundenes Steuerelement einem Formular hinzufügen
1.
Ziehen Sie die Spalte EmployeeID in die obere rechte Ecke des Formulars.
Hinweis BindingNavigator-Objekte werden in Kapitel 13 besprochen.
Visual Studio fügt dem Formular ein Label-Steuerelement, ein BindingNavigatorSteuerelement und verschiedene Komponenten hinzu (siehe Abbildung 1.16).
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
36
Teil A:
Einführung in ADO.NET
Abbildung 1.16 Dem Formular wurde ein Label-Steuerelement hinzugefügt
2.
Ziehen Sie die Spalten Title, First Name, Last Name, Hire Date und Notes auf das
Formular, und ordnen Sie sie wie in Abbildung 1.17 an.
Abbildung 1.17 Neue datengebundene Steuerelemente im Formular
3.
Klicken Sie auf das Smarttag-Symbol am Textfeld Notes, und aktivieren Sie im
Kontextmenü das Kontrollkästchen MultiLine (siehe Abbildung 1.18).
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
Kapitel 1: Einstieg in ADO.NET
37
Abbildung 1.18 Textfeld mit Kontextmenü und der Option MultiLine
4.
Verschieben und vergrößern Sie das Steuerelement wie in Abbildung 1.19 dargestellt.
Abbildung 1.19 Das fertig gestellte Formular
5.
Drücken Sie (F5), um die Anwendung auszuführen.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
38
Teil A:
Einführung in ADO.NET
Visual Studio kompiliert die Anwendung und zeigt die Daten der Tabelle
Employees in den Steuerelementen auf dem Formular an (siehe Abbildung 1.20).
Abbildung 1.20 Formular mit Daten aus der Tabelle Employees
6.
Zeigen Sie mithilfe der Navigationsschaltflächen des BindingNavigator-Steuerelements am oberen Rand des Formulars die Tabellendaten an. Schließen Sie die
Anwendung, wenn Sie alle Daten betrachtet haben.
Zusammenfassung
In diesem Kapitel wurde veranschaulicht, wie einfach ein datengebundenes Windows
Form in Microsoft Visual Studio 2005 erstellt werden kann. Im weiteren Verlauf dieses
Buches werden wir die verschiedenen ADO.NET-Klassen und verwandte Klassen
genauer untersuchen. Wir beginnen mit dem Connection-Objekt, das für die Kommunikation zwischen einer .NET Framework-Anwendung und einer Datenquelle zuständig ist.
Rebecca Riordan: Microsoft ADO.NET 2.0 - Schritt für Schritt. Microsoft Press 2006 (ISBN 3-86063-585-9)
Herunterladen