EDM: Validieren von Entitäten mit IDataErrorInfo

Die Validierung bei der Eingabe von Daten ist eines der wichtigsten Themen bei der Erstellung benutzerfreundlicher Anwendungen. Nachdem der Artikel “EDM: Ausnahmen beim Speichern behandeln” gezeigt hat, wozu Sie im Rahmen der Validierung die durch Restriktionen im Datenmodell auftretenden Exceptions nutzen können, schauen wir uns nun einen einfachen Weg an, um Validierungsregeln in Entitätsklassen zu definieren und beim Fehlschlagen der Validierung entsprechende Meldungen in der Benutzeroberfläche auszugeben. Dabei zeigen wir hier den Umgang mit der Schnittstelle “IDataErrorInfo”.

Weiterlesen

EDM: Kunden verwalten mit Ribbon

Bisher haben wir in diesem Magazin nur einzelne Beispiele zur Darstellung von Daten aus Tabellen geliefert. Diesmal wollen wir einen Schritt weitergehen: Wir erstellen eine WPF-Anwendung, die ein eigenes Ribbon enthält und mit diesem die Steuerung einiger Funktionen zur Auflistung von Kunden sowie zum Bearbeiten, Hinzufügen und Löschen von Kundendatensätzen ermöglicht. Dabei nutzen wir als Container für die angezeigten Seiten mit der Kundenliste und den Kundendetails ein Frame-Objekt. Damit können wir, wenn mehrere Benutzer geöffnet sind, sogar durch die entsprechenden Seiten navigieren.

Weiterlesen

LocalDB-Datenbanken nutzen

LocalDB ist ein spezieller Ausführungsmodus von SQL Server Express, den Sie gut für die Entwicklung und die Weitergabe von Datenbankanwendungen auf Basis von .NET-Technologien nutzen können. Außerdem ist diese Variante des SQL Servers wesentlich leichtgewichtiger und in weniger als einer Minute zu installieren. Der Download umfasst gerade mal 45 MB.

Weiterlesen

Entity Data Model für eine Datenbank erstellen

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 zunächst, wie Sie die Verbindung zu einer Beispieldatenbank einrichten und dann die für den Zugriff per C# oder die Anzeige in WPF-Fenstern und -Steuerelementen nötigen Objekte erstellen.

Weiterlesen

LINQ to Entities: Daten abfragen

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 per C#-Konsolenanwendung auf die per Entity Data Model bereitgestellten Daten zugreifen.

Weiterlesen

Objektorientierte Programmierung: Interfaces

Interfaces beziehungsweise Schnittstellen bezeichnen in der Computerwelt eine Menge verschiedener Dinge. Es gibt eine Benutzerschnittstelle, Softwareschnittstellen, Maschinenschnittstellen und mehr. Uns interessiert das Interface, wie es in der objekt-orientierten Programmierung genutzt wird. Schnittstellen dienen dort als zuverlässige Definition der verfügbaren Methoden, Eigenschaften oder Ereignisse für eine oder mehrere Klassen, welche diese tatsächlich definieren.

Weiterlesen

C#-DLL für COM/VBA erstellen

Das .NET-Framework bietet im Vergleich zu VBA eine schier unendliche Menge nutzbarer Bibliotheken mit Objekten, Methoden und Eigenschaften für die verschiedensten Anwendungsfälle. Wer noch nicht komplett auf eine .NET-Anwendung umsteigen möchte, mag sich aber vielleicht die Möglichkeiten des Frameworks unter VBA erschließen. Dazu programmieren Sie eine DLL-Bibliothek, welche die benötigen .NET-Elemente enthält und für externe Anwendungen wie etwa eine Access-Datenbank bereithält. Der vorliegende Artikel erklärt, wie dies funktioniert.

Weiterlesen

Kombinationsfelder mit Daten füllen

Unter Access ist das einfach: Fremdschlüsselfeld als Nachschlagefeld definieren, Tabelle an Formular binden, Fremdschlüsselfeld in den Entwurf ziehen – fertig ist das Kombinationsfeld zur Auswahl von Werten einer Lookup-Tabelle. Unter C#/WPF sieht das etwas anders aus. Dieser Grundlagenartikel zeigt, wie Sie ein Kombinationsfeld mit den Daten einer Lookup-Tabelle füllen und wie Sie auf wichtige Informationen wie etwa den Primärschlüsselwert des gewählten Datensatzes zugreifen – und das auf Basis von typisierten und untypisierten DataSets.

Weiterlesen

WPF-Controls: Schaltflächen

In den ersten Ausgaben des DATENBANKENTWICKLERs haben Sie bereits einige Steuerelemente kurz kennen gelernt. In den folgenden Ausgaben wird sich dies ändern. Im vorliegenden Artikel schauen wir uns die verschiedenen Schaltflächen an, die WPF uns zur Verfügung stellt. Dabei lernen Sie die wichtigsten Unterschiede zu den von Access bekannten Schaltflächen kennen.

Weiterlesen