我有点想在C#.Net中使用SQLite,但我似乎无法找到合适的库。有吗?一个正式的?有没有其他方法可以使用SQLite而不是使用包装器?
答案 0 :(得分:327)
来自https://system.data.sqlite.org:
System.Data.SQLite是SQLite的ADO.NET适配器。
System.Data.SQLite由Robert Simpson创建。 Robert仍然拥有此存储库的提交权限,但不再是活跃的贡献者。开发和维护工作现在主要由SQLite开发团队执行。 SQLite团队致力于长期支持System.Data.SQLite。
“System.Data.SQLite是原始的SQLite数据库引擎和一个完整的ADO.NET 2.0提供程序,全部集成到一个混合模式程序集中。它是原始sqlite3.dll的完全替代品(你甚至可以将它重命名为sqlite3.dll)。与普通的混合程序集不同,它在.NET运行时没有链接器依赖性,因此它可以独立于.NET进行分发。“
它甚至支持Mono。
答案 1 :(得分:32)
答案 2 :(得分:26)
现在还有这个选项:http://code.google.com/p/csharp-sqlite/ - SQLite到C#的完整端口。
答案 3 :(得分:15)
来自sqlite.org的人已经接管了ADO.NET提供商的开发:
这是流行的ADO.NET的一个分支 适用于SQLite的4.0适配器,称为System.Data.SQLite。的鼻祖 System.Data.SQLite,Robert Simpson,是 意识到这个叉子,已经表达了他的观点 批准,并具有提交权限 新的Fossil存储库。 SQLite 开发团队打算维护 System.Data.SQLite继续前进。
历史版本,以及 原始的支持论坛,可能仍然是 发现于 但是http://sqlite.phxsoftware.com 没有更新 自2010年4月起的版本。
完整的功能列表可在on their wiki找到。亮点包括
发布的DLL可以直接从the site下载。
答案 4 :(得分:8)
我肯定会选择 System.Data.SQLite (如前所述:http://sqlite.phxsoftware.com/)
它与ADO.NET(System.Data。*)一致,并被编译为单个DLL。没有sqlite3.dll - 因为SQLite的C代码嵌入在System.Data.SQLite.dll中。一点托管C ++魔术。
答案 5 :(得分:7)
sqlite-net是一个开源的最小库,允许.NET和Mono应用程序在SQLite 3 databases中存储数据。有关更多信息,请访问wiki page。
它是用C#编写的,只是简单地与您的项目一起编译。它首先设计用于在iPhone上使用MonoTouch,但已经成长为适用于所有平台(Mono for Android,.NET,Silverlight,WP7,WinRT,Azure等)。
它以Nuget package的形式提供,截至2014年,它是第二个最受欢迎的SQLite包,下载量超过60,000。
sqlite-net被设计为一个快速方便的数据库层。它的设计遵循以下目标:
非目标包括:
答案 6 :(得分:2)
Mono附带一个包装纸。 https://github.com/mono/mono/tree/master/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite_2.0以.net友好的方式提供代码以包装在下载页面http://www.sqlite.org/sqlite-shell-win32-x86-3071300.zip上找到的实际SQLite dll(http://www.sqlite.org/download.html/)。它适用于Linux或Windows。
这似乎是所有世界中最薄的,最大限度地减少了对第三方图书馆的依赖。如果我必须从头做这个项目,这就是我的方式。
答案 7 :(得分:1)
Microsoft现在提供 Microsoft.Data.Sqlite 作为.NET的第一方SQLite解决方案,它是作为ASP.NET Core的一部分提供的。许可证是Apache License, Version 2.0。
* 免责声明:我自己还没有尝试过使用它,但Microsoft Docs here提供了一些文档,可以将它与.NET Core和UWP一起使用。
答案 8 :(得分:0)
Monotouch 1.2版包括对System.Data的支持。你可以在这里找到更多细节: http://monotouch.net/Documentation/System.Data
但基本上它允许你使用常用的ADO .NET模式和sqlite。
答案 9 :(得分:0)
http://www.devart.com/dotconnect/sqlite/
dotConnect for SQLite是SQLite的增强型数据提供程序,它基于ADO.NET技术构建,可为开发基于SQLite的数据库应用程序提供完整的解决方案。作为Devart数据库应用程序开发框架的一部分,dotConnect for SQLite提供了与SQLite数据库的高性能本机连接以及许多创新的开发工具和技术。
dotConnect for SQLite引入了设计应用程序架构的新方法,提高了工作效率,并利用了数据库应用程序的实现。
我使用的是标准版,它完美无缺:)
答案 10 :(得分:0)
sqlite库提供的函数的准系统包装器。最新版本支持sqlite库3.7.10提供的功能