Datenbanken in WinRT verwenden

War man es von Windows Phone gewohnt eine Datenbank zu verwenden zu können, so ist dies unter Windows 8 in den eigenen Apps nicht möglich. Allerdings hat Sergey Barskiy auf CodePlex sein Projekt WinRT-Database veröffentlicht, welches es ermöglicht als Entwickler wie mit einer Datenbank zu arbeiten, während die Daten in XML-Dateien abgespeichert werden.

Um nun eine Datenbank in der eigenen Windows 8 App verwenden zu können, muss man das Projekt erstmal über NuGet installieren. Dafür muss zunächst ein neues Projekt angelegt bzw. ein bestehendes Projekt in Visual Studio geöffnet werden. Anschließend wählt man ToolsLibrary Package ManagerPackage Manager Console aus und gibt den Befehl Install-Package WinRT.DB in der Konsole ein.

WinRT-Database Installation über NuGet

WinRT-Database Installation über NuGet

Nun muss man das Daten-Modell anlegen, welches den Aufbau eines Datensatz repräsentiert. Dazu legt man sich einen Ordner DataModel im Solution-Explorer an, wobei dies nicht zwingend notwendig ist, aber zur Ordnung beiträgt.

In diesem Beispiel lege ich eine Personen-Datenbank an. Dazu legen wir nun die Klasse Person.cs in dem Ordner DataModel an. Zunächst muss WinRTDatabase importiert werden, was durch die Eingabe von using WinRTDatabase; erledigt wird. Anschließend hat die Klasse Person den folgenden Code:

Innerhalb dieser Klasse werden somit die einzelnen Properties bzw. Eigenschaften einer Person definiert. Hierzu zählen eine ID, der Vor- und Zuname, die Straße und Ort sowie das Alter.

Nun legen wir eine zweite Klasse mit den Namen PersonViewModel.cs an. Auch hier wird wieder WinRTDatabase eingebunden und die Klasse mit dem folgenden Code gefüllt:

Nun müssen wir noch die App.xaml.cs-Datei bearbeiten, damit wir von den einzelnen Seiten Zugriff auf die definierte Datenbank erhalten. Hierfür öffnen wir die besagte Datei und ergänzen oberhalb des Konstruktors die folgenden Zeilen:

Nun ist es möglich innerhalb der App auf die Datenbank zuzugreifen. Daher können wir jetzt neue Personen hinzufügen und bestehende Personen auch wieder aus der Datenbank entfernen. Der allgemeine Zugriff erfolgt dabei über App.PVM und das Hinzufügen ist über App.PVM.AddPerson(<Person>) und das Entfernen über App.PVM.DeletePerson(<Person>) möglich.

You may also like...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *