Nur um meinen Kommentar mit ein wenig mehr Nachforschung zu verfolgen - SQLite-net unterstützt nichts, was nicht direkt auf die Datenbank abgebildet werden kann. Siehe hier für warum:
Das ORM kann eine .NET-Klassendefinition übernehmen und in eine SQL-Tabellendefinition konvertieren. (Die meisten ORMs gehen in die andere Richtung.) Dazu werden alle öffentlichen Eigenschaften Ihrer Klassen untersucht und es werden Attribute unterstützt, mit denen Sie Spaltendetails angeben können.
Sie können prüfen, ob Sie mit einem anderen ORM auf Ihre Daten zugreifen (ich verwende Vici Coolstorage ), falls Das ist es, was Sie zu tun versuchen, oder entfernen Sie einfach List<Chapters>
aus Ihrer Klasse und fügen Sie der Klasse BookID
ein Chapters
-Feld hinzu. So würde die Datenbank es darstellen.
Um damit zu arbeiten, könnten Sie einen dieser Klassen zu Ihrer Klasse hinzufügen:
%Vor%oder
%Vor%Damit können Sie die Liste zumindest leicht ziehen, obwohl es langsam wäre, da es jedes Mal auf die Datenbank trifft, wenn Sie darauf zugreifen.
Sehen Sie sich SQLite-Net Extensions an. Es bietet komplexe Beziehungen auf SQLite-Net mit Reflektion.
Beispiel aus der Site extrahiert:
%Vor%Tags und Links c# windows-runtime windows-store-apps microsoft-metro sqlite3