2016-03-24 2 views
0

Alle Tutorials, die darüber diskutieren, wie SQLite in eine UWP-App (Universal Windows Platform) integriert wird, diskutieren die Notwendigkeit, basierend auf einem Modell Datenbanktabellen zu erstellen. Ist es möglich, eine vorhandene SQLite-Datei in eine neue Anwendung zu integrieren und eine vorhandene Tabelle einem Klassenmodell zuzuordnen?UWP C# -Anwendung, die mit vorhandener SQLite-Datei verbindet

Zum Beispiel gibt es sehr gute Tutorials wie this, die die Erstellung einer Datenbanktabelle erzwingt, um die Zuordnung von Datenbanktabelle zu Datenmodell herzustellen. Was passiert, wenn ich bereits eine vorhandene Tabelle habe, gegen die ich abfragen möchte?

+1

Sie werden kein Problem mit einer vorhandenen Datenbank haben, solange Ihre Modelle mit der Datenbank übereinstimmen. –

Antwort

0

Ich konnte die vorhandene Tabelle nicht erkennen, indem ich mein Datenmodell manipulierte, um es anzupassen.

Hier ist, was ich getan habe: Ich exportierte meinen SQLite-Inhalt in eine JSON-Datei, erstellte ein Datenmodell in meiner App, um die SQLite-Tabelle zu erstellen, verwendete die cited tutorial code, um eine neue Tabelle in der App zu erstellen das Datenmodell, und lesen Sie dann in der JSON-Datei neue Instanzen des Datenmodells erstellen und sie über die insertOrReplace-Methode in die Datenbank schieben. Jetzt, wo dies einmal gemacht wurde, habe ich die Datenbank so ausgeführt, wie ich sie für die App brauche.

0

// Schritt 1: // den Pfad der Datenbank zum Beispiel Get:

string path = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, 
        "ExsistingDatabase.sqlite"); 
       conn = new SQLite.Net.SQLiteConnection(new 
        SQLite.Net.Platform.WinRT.SQLitePlatformWinRT(), path); 

// Schritt 2: Abfragen des Datenbanktabelle zum Beispiel:

using (conn = new SQLite.Net.SQLiteConnection(new SQLite.Net.Platform.WinRT.SQLitePlatformWinRT(), path)) 
      { 
       var result = conn.Query<ObjectModel>(@"Select * From TableName"); 
      } 

Hier ObjectModel ist das Ansichtsmodell, das Sie in der Ausgabe benötigen. Es könnte irgendein Objekt sein.
Hoffe, das hilft Cheers