当前位置:  开发笔记 > 编程语言 > 正文

是否有SQLite的.NET/C#包装器?

如何解决《是否有SQLite的.NET/C#包装器?》经验,为你挑选了6个好方法。

我有点想在C#.Net中使用SQLite,但我似乎无法找到合适的库.有吗?一个正式的?有没有其他方法可以使用SQLite而不是使用包装器?



1> ine..:

来自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.


这是一个老问题,但我不得不加我0.02美元.System.Data.SQLite摇滚.它具有超级精致,稳定和商业级的品质.最重要的是,它是100%托管代码,并已作为公共域源代码发布.
这个包装器不再由其原始作者开发,并且开发似乎已被SQLite本身接管.新网站位于system.data.sqlite.org,但目前它似乎不太方便用户,而且与原版相比更多的工作进展.
@NathanRidley - 你确定它是100%管理的,因为这个答案说"System.Data.SQLite是原始的SQLite数据库引擎和一个完整的ADO.NET 2.0提供程序,所有这些都集成到一个混合模式程序集中."
只是为了保持一致性,因为人们都在谈论两种不同的东西.在sqlite.phxsoftware.com中,您可以指向sourceforge.net/projects/sqlite-dotnet2进行下载.
仅供参考,我尝试使用微软的Microsoft.Data.Sqlite .NET标准Nuget软件包,但它在AsyncPoco Github库中的少数集成测试中失败了.切换到System.Data.SQLite后,一切都运行良好.

2> Tom Robinson..:

以下是我能找到的:

托管源码

SQLite.NET包装器

System.Data.SQLite

资料来源:

sqlite.org

其他海报



3> xanadont..:

现在还有这个选项:http://code.google.com/p/csharp-sqlite/ - SQLite到C#的完整端口.



4> David Schmit..:

来自sqlite.org的人员接管了ADO.NET提供程序的开发:

从他们的主页:

这是SQLite流行的ADO.NET 4.0适配器的一个分支,称为System.Data.SQLite.System.Data.SQLite的发起人罗伯特辛普森知道这个分支,表示了他的认可,并且对新的Fossil存储库具有提交权限.SQLite开发团队打算继续维护System.Data.SQLite.

历史版本,以及原来支持论坛,可能仍然可以找到 http://sqlite.phxsoftware.com,虽然已经出现了2010年以来的月没有更新到这个版本.

完整的功能列表可以在他们的维基上找到.亮点包括

ADO.NET 2.0支持

完整的实体框架支持

全Mono支持

Visual Studio 2005/2008设计时支持

Compact Framework,C/C++支持

发布的DLL可以直接从站点下载.



5> 小智..:

我肯定会使用System.Data.SQLite(如前所述:http://sqlite.phxsoftware.com/)

它与ADO.NET(System.Data.*)一致,并被编译为单个DLL.没有sqlite3.dll - 因为SQLite的C代码嵌入在System.Data.SQLite.dll中.一点托管C++魔术.



6> dodgy_coder..:

sqlite-net是一个开源的最小库,允许.NET和Mono应用程序在SQLite 3数据库中存储数据.维基页面上的更多信息.

它是用C#编写的,只是简单地与您的项目一起编译.它首先被设计为与iPhone上的MonoTouch一起使用,但已经成长为适用于所有平台(Mono for Android,.NET,Silverlight,WP7,WinRT,Azure等).

它作为Nuget包提供,是2014年第二个最受欢迎的SQLite包,下载量超过60,000.

sqlite-net被设计为一个快速方便的数据库层.它的设计遵循以下目标:

很容易与现有项目和MonoTouch项目集成.

SQLite上的薄包装应该快速高效.(该库不应该是您查询的性能瓶颈.)

非常简单的方法,用于安全地(使用参数)执行CRUD操作和查询,并以强类型方式检索这些查询的结果.

适用于您的数据模型,而不会强制您更改类.(包含一个小的反射驱动的ORM层.)

除了sqlite2库的编译形式之外的0依赖项.

非目标包括:

不是 ADO.NET实现.这不是一个完整的SQLite驱动程序.如果需要,请使用System.Data.SQLite.

推荐阅读
mylvfamily
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有