Ich würde SQLite gerne in C # .Net verwenden, aber ich kann anscheinend keine geeignete Bibliothek finden. Ist dort eines? Eine offizielle? Gibt es andere Möglichkeiten, SQLite als mit einem Wrapper zu verwenden?
Ich würde SQLite gerne in C # .Net verwenden, aber ich kann anscheinend keine geeignete Bibliothek finden. Ist dort eines? Eine offizielle? Gibt es andere Möglichkeiten, SQLite als mit einem Wrapper zu verwenden?
Antworten:
Von https://system.data.sqlite.org :
System.Data.SQLite ist ein ADO.NET-Adapter für SQLite.
System.Data.SQLite wurde von Robert Simpson gestartet. Robert hat weiterhin Festschreibungsrechte für dieses Repository, ist jedoch kein aktiver Mitwirkender mehr. Entwicklungs- und Wartungsarbeiten werden heute hauptsächlich vom SQLite-Entwicklungsteam durchgeführt. Das SQLite-Team ist bestrebt, System.Data.SQLite langfristig zu unterstützen.
"System.Data.SQLite ist das ursprüngliche SQLite-Datenbankmodul und ein vollständiger ADO.NET 2.0-Anbieter, die alle in einer einzigen Assembly im gemischten Modus zusammengefasst sind. Es ist ein vollständiger Drop-In-Ersatz für die ursprüngliche sqlite3.dll (Sie können sie sogar in umbenennen) sqlite3.dll). Im Gegensatz zu normalen gemischten Assemblys besteht keine Linker-Abhängigkeit von der .NET-Laufzeit, sodass es unabhängig von .NET verteilt werden kann. "
Es unterstützt sogar Mono.
Hier sind die, die ich finden kann:
Quellen:
Es gibt jetzt auch diese Option: http://code.google.com/p/csharp-sqlite/ - eine vollständige Portierung von SQLite auf C #.
Die Leute von sqlite.org haben die Entwicklung des ADO.NET-Anbieters übernommen:
Von ihrer Homepage :
Dies ist eine Abzweigung des beliebten ADO.NET 4.0-Adapters für SQLite, der als System.Data.SQLite bekannt ist. Der Urheber von System.Data.SQLite, Robert Simpson, ist sich dieser Gabelung bewusst, hat seine Zustimmung zum Ausdruck gebracht und Berechtigungen für das neue Fossil-Repository festgeschrieben. Das SQLite-Entwicklungsteam beabsichtigt, System.Data.SQLite auch in Zukunft beizubehalten.
Historische Versionen sowie die ursprünglichen Support-Foren finden Sie weiterhin unter http://sqlite.phxsoftware.com , obwohl seit April 2010 keine Aktualisierungen dieser Version vorgenommen wurden.
Die vollständige Liste der Funktionen finden Sie im Wiki . Highlights sind
Freigegebene DLLs können direkt von der Site heruntergeladen werden .
Ich würde definitiv mit System.Data.SQLite gehen (wie bereits erwähnt: http://sqlite.phxsoftware.com/ )
Es ist kohärent mit ADO.NET (System.Data. *) Und wird in einer einzigen DLL kompiliert. Keine sqlite3.dll - da der C-Code von SQLite in System.Data.SQLite.dll eingebettet ist. Ein bisschen verwaltete C ++ - Magie.
sqlite-net ist eine Open Source-Minimalbibliothek, mit der .NET- und Mono-Anwendungen Daten in SQLite 3-Datenbanken speichern können . Weitere Informationen auf der Wiki-Seite .
Es ist in C # geschrieben und soll einfach mit Ihren Projekten kompiliert werden. Es wurde zuerst für die Verwendung mit MonoTouch auf dem iPhone entwickelt, ist jedoch für alle Plattformen (Mono für Android, .NET, Silverlight, WP7, WinRT, Azure usw.) geeignet.
Es ist als Nuget-Paket erhältlich , wo es mit über 60.000 Downloads ab 2014 das zweitbeliebteste SQLite-Paket ist.
sqlite-net wurde als schnelle und bequeme Datenbankschicht konzipiert. Sein Design folgt aus diesen Zielen:
Nichtziele sind:
Mono wird mit einer Hülle geliefert. https://github.com/mono/mono/tree/master/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite_2.0 enthält Code zum Umschließen der eigentlichen SQLite-DLL ( http: //www.sqlite). org / sqlite-shell-win32-x86-3071300.zip auf der Download-Seite http://www.sqlite.org/download.html/ ) auf .net-freundliche Weise. Es funktioniert unter Linux oder Windows.
Dies scheint die dünnste aller Welten zu sein, wodurch Ihre Abhängigkeit von Bibliotheken von Drittanbietern minimiert wird. Wenn ich dieses Projekt von Grund auf neu machen müsste, würde ich es so machen.
Microsoft bietet jetzt Microsoft.Data.Sqlite als SQLite-Erstanbieterlösung für .NET an, die als Teil von ASP.NET Core bereitgestellt wird. Die Lizenz ist die Apache-Lizenz, Version 2.0 .
* Disclaimer: Ich habe nicht wirklich versucht , mich dies noch mit, aber es gibt einige Dokumentation auf Microsoft Docs zur Verfügung gestellt hier für die Verwendung mit .NET - Core und UWP.
Für diejenigen wie mich, die ADO.NET nicht benötigen oder nicht möchten, diejenigen, die Code näher an SQLite ausführen müssen, aber dennoch mit netstandard
(.net Framework, .net Core usw.) kompatibel sind , habe ich eine erstellt 100% kostenloses Open Source Projekt namens SQLNado (für "Not ADO") auf github hier verfügbar:
https://github.com/smourier/SQLNado
Es ist hier als Nuget verfügbar: https://www.nuget.org/packages/SqlNado, aber auch als einzelne CS-Datei, sodass es in jedem C # -Projekttyp sehr praktisch ist.
Es unterstützt alle SQLite-Funktionen bei Verwendung von SQL-Befehlen und die meisten SQLite-Funktionen über .NET:
Version 1.2 von Monotouch unterstützt System.Data. Weitere Details finden Sie hier: http://monotouch.net/Documentation/System.Data
Grundsätzlich können Sie jedoch die üblichen ADO .NET-Muster mit SQLite verwenden.
http://www.devart.com/dotconnect/sqlite/
dotConnect für SQLite ist ein erweiterter Datenanbieter für SQLite, der auf der ADO.NET-Technologie aufbaut und eine Komplettlösung für die Entwicklung von SQLite-basierten Datenbankanwendungen bietet. Als Teil des Entwicklungsframeworks für Devart-Datenbankanwendungen bietet dotConnect für SQLite sowohl native Hochleistungskonnektivität zur SQLite-Datenbank als auch eine Reihe innovativer Entwicklungstools und -technologien.
dotConnect für SQLite führt neue Ansätze zum Entwerfen der Anwendungsarchitektur ein, steigert die Produktivität und nutzt die Implementierung von Datenbankanwendungen.
Ich benutze die Standardversion, es funktioniert perfekt :)
Ein Barebone-Wrapper der Funktionen, die von der SQLite-Bibliothek bereitgestellt werden. Die neueste Version unterstützt Funktionen der SQLite-Bibliothek 3.7.10