我有点喜欢从c#中使用SQLite。Net,但我似乎找不到合适的图书馆。有吗?官方的?除了使用包装器,还有其他方法使用SQLite吗?
当前回答
Mono带有一个包装。https://github.com/mono/mono/tree/master/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite_2.0提供了以.net友好的方式包装实际SQLite dll (http://www.sqlite.org/sqlite-shell-win32-x86-3071300.zip在下载页面http://www.sqlite.org/download.html/上找到)的代码。它可以在Linux或Windows上运行。
这似乎是所有世界中最薄的,可以最大限度地减少对第三方库的依赖。如果我必须从头开始做这个项目,我就会这样做。
其他回答
从https://system.data.sqlite.org:
System.Data.SQLite是ADO。SQLite的NET适配器。 sqlite是由Robert Simpson创建的。Robert仍然拥有此存储库上的提交特权,但不再是活动贡献者。开发和维护工作现在主要由SQLite开发团队执行。SQLite团队致力于长期支持System.Data.SQLite。
“System.Data。SQLite是原始的SQLite数据库引擎和一个完整的ADO。NET 2.0提供程序全部滚入一个混合模式程序集。它完全取代了原来的sqlite3.dll(您甚至可以将其重命名为sqlite3.dll)。与普通的混合程序集不同,它不依赖于。net运行时,因此可以独立于。net进行分发。”
它甚至支持Mono。
以下是我能找到的:
managed-sqlite SQLite。净包装 System.Data.SQLite
来源:
sqlite.org 其他的海报
http://www.devart.com/dotconnect/sqlite/
dotConnect for SQLite是一个基于ADO的增强的SQLite数据提供程序。NET技术为开发基于sqlite的数据库应用程序提供了一个完整的解决方案。作为Devart数据库应用程序开发框架的一部分,dotConnect for SQLite既提供了到SQLite数据库的高性能本机连接,也提供了许多创新的开发工具和技术。
SQLite的dotConnect引入了设计应用程序架构的新方法,提高了工作效率,并利用了数据库应用程序实现。
我使用标准版本,它工作完美:)
我肯定会选择System.Data.SQLite(如前所述:http://sqlite.phxsoftware.com/)
它与ADO是一致的。NET (System.Data.*),并被编译成单个DLL。没有sqlite3.dll -因为SQLite的C代码嵌入在System.Data.SQLite.dll中。一点托管的c++魔法。
Monotouch 1.2版包含了对System.Data的支持。你可以在这里找到更多细节: http://monotouch.net/Documentation/System.Data
但基本上,它允许你在sqlite中使用常见的ADO . net模式。