EDM: Lookup-Kombinationsfelder

Im Artikel “Einfaches Detailfenster” sehen wir uns an, wie Sie per Drag and Drop die Daten einer Kundentabelle über ein Entity Data Model zu einem Fenster hinzufügen und dieses mit Navigationsschaltflächen ausstatten. Eine Kleinigkeit fehlt dort noch: Die Umwandlung des Textfeldes mit den Anreden in ein entsprechendes Kombinationsfeld, mit dem sich die Anreden auswählen lassen. Dies reichen wir im vorliegenden Artikel nach.

Weiterlesen

EDM: 1:n-Beziehung als Parent-Child-Ansicht

Eine der unter Access ganz einfach abzubildenden Hierarchien zweier Tabellen ist die 1:n-Beziehung in einem Haupt- und einem Unterformular. Auch unter WPF mit den Daten aus einem Entity Data Model lässt sich dies gut abbilden. Wir schauen uns in diesem Artikel an, wie es funktioniert und was Sie beim Anzeigen der Daten beachten müssen. Als Beispiel nutzen wir die Kategorien der Datenbank im Hauptfenster und die der aktuellen Kategorie zugeordneten Artikel in einer Listenansicht.

Weiterlesen

LINQ to Entities: Daten bearbeiten

In den vorangegangenen Ausgaben von DATENBANKENTWICKLER haben Sie bereits erfahren, wie Sie per ADO.NET auf die Daten der Tabellen einer Datenbank zugreifen. Nun nutzen wir nicht mehr direkt ADO.NET, sondern das Entity Framework als Datenlieferant, welches eine ganz andere Art des Zugriffs ermöglicht. Dieser Artikel zeigt, wie Sie die per Entity Data Model bereitgestellten Daten mit LINQ to Entities ändern, löschen und neu anlegen.

Weiterlesen

WPF/EDM: Kundendetails

Wenn Sie aus einer Kundenübersicht die Details eines Kunden anzeigen oder einen neuen Kunden anlegen möchten, benötigen Sie ein geeignetes weiteres Fenster. Dieses soll die Daten des zu bearbeitenden Kundendatensatzes oder auch einen neuen, leeren Datensatz anzeigen – je nach Anforderung. Wie Sie dies auf Basis von Daten aus einem Entity Data Model erledigen, zeigt dieser Artikel.

Weiterlesen

SQL Server-Interaktion mit dem Profiler verfolgen

Wenn Sie per ADO.NET, LINQ to Entities oder anderen Zugriffstechniken auf die Datenbank eines SQL Servers zugreifen, werden die von Ihnen programmierten Codezeilen meist im Hintergrund in SQL-Befehle umgewandelt. In vielen Fällen kann es interessant sein, was dort tatsächlich geschieht. Ein geeignetes Werkzeug ist der SQL Server Profiler, der zwar demnächst ausläuft, aber eine schnelle Möglichkeit der Nachverfolgung liefert.

Weiterlesen

Einführung in das Entity Framework

In vorherigen Beiträgen haben wir gezeigt, wie Sie Fenster und Steuerelemente wie das DataGrid mit den Daten aus einem ADO.NET-DataSet füllen können. Wenn Sie echte mehrschichtige Anwendungen bauen möchten, gehen Sie einen Schritt weiter und nutzen einen objektrelationalen Mapper, um die Daten aus den Tabellen in Objekten abzulegen, bevor Sie diese als Datenquelle für die Benutzeroberfläche nutzen. Der Clou eines solchen Mappers ist, dass es sich um ein Framework handelt – das heißt, dass Sie nur einen geringen Teil des notwendigen Codes selbst schreiben müssen. Dieser Artikel gibt eine kleine Einführung in das Entity Framework.

Weiterlesen

Bindung zwischen Steuerelementen

Unter VBA waren die Möglichkeiten der Datenbindung überschaubar: Formulare, Berichte und einige Steuerelemente wiesen entsprechende Eigenschaften auf, die an Tabellen, Abfragen oder auch Wertlisten oder Felder geknüpft werden konnten. Unter WPF und C# sieht es ganz anders aus. Hier stehen Objekte im Vordergrund. Dieser Artikel zeigt daher zunächst, wie Sie Elemente wie Steuerelemente an die Eigenschaften anderer Elemente binden.

Weiterlesen

ADO.NET: Typisierte und untypisierte DataSets

Unter ADO.NET gibt es typisierte und untypisierte DataSets. In den bisherigen Artikeln haben Sie meist mit untypisierten DataSets gearbeitet. Das heißt, dass Sie alle benötigten Objekte per Code erzeugt und dabei auch Verbindungseigenschaften, SQL-Anweisungen et cetera übergeben haben. Bei typisierten DataSets definieren Sie die meisten Eigenschaften des später im Code verwendeten DataSets über einen Assistenten. Dies gelingt durch einige Klassen, die vom Assistenten automatisch erzeugt werden und mit deren Hilfe Sie später direkt per IntelliSense auf die enthaltenen Tabellen und Felder zugreifen können.

Weiterlesen

Datenzugriff mit ADO.NET, Teil 2

Im ersten Teil unserer Artikelreihe zum Thema ADO.NET haben wir uns angesehen, wie Sie mit dem DataReader-Objekt auf die Daten einer Tabelle zugreifen und wie Sie mit dem Command-Objekt Aktionsabfragen durchführen können. Im vorliegenden Teil sehen wir uns an, wie Sie mit dem DataAdapter-Objekt auf die Daten einer Datenbank zugreifen und das DataSet- und das DataTable-Objekt einsetzen, um verbindungslos mit den Daten einer Datenbank zu arbeiten.

Weiterlesen

Objektorientierte Programmierung: Vererbung I

Eines der wichtigsten Merkmale der objektorientierten Programmierung ist die Vererbung. Dank der Vererbung kann man für ein Objekt eine Basisklasse erstellen, die grundlegende Eigenschaften und Methoden für dieses Objekt bereitstellt. Benötigen Sie nun ein weiteres Objekt, das auf dem ersten Objekt aufbaut, aber weitere oder geänderte Eigenschaften und Methoden enthält, müssten Sie ohne Vererbung die gleiche Klasse nochmal erstellen und nach ihren Wünschen anpassen. Dank Vererbung brauchen Sie in der Klasse für das neue Objekt jedoch nur die Erweiterungen und Änderungen zu definieren. Den Rest verwenden Sie von der ersten Klasse – und brauchen eine Menge Code nur an einer Stelle zu warten.

Weiterlesen