LINQ with SQLite(linqtosql)

时间:2008-10-30 12:53:59

标签: linq linq-to-sql sqlite

我有一个需要存储的小项目(我选择了SQLite),ADO DLL for .Net for Sqlite得到了很好的结果。

安装后,我注意到它包含一个SQLLinq.dll。在调查过多的工作之前,以及因为我没有在网上看到任何好的例子,我想知道是否有人用SQLite和LINQ获得了任何好的结果?

*如果linqtosql以与SQL数据库相同的方式工作,请告诉我。当我看到它时,我对Dll感兴趣,因为我之前从未使用过Linqtosql,我认为这是一个很好的尝试机会,

9 个答案:

答案 0 :(得分:49)

我最近发现了DBLinq,它在其他数据库中支持SQLite:

答案 1 :(得分:10)

根据我自己的经验,Microsoft SQL Compact Framework是一个真正的NO-GO。它真的很慢,它的查询分析器真的很差。我不得不要求我的团队重写我的Windows Mobile组件的所有管道代码,以摆脱SQL CE的糟糕表现。

答案 2 :(得分:8)

LINQ to SQL仅支持SQL Server / Compact,但SQLite人员可以根据程序集的名称编写自己的LINQ提供程序。

如果是这种情况,您可以通过添加对它的引用来使用LINQ查询语法,但是您不会获得LINQ to SQL特定功能,例如DataContext / designer / SQL Metal / Column属性/ EntitySet / EntityRef等

答案 3 :(得分:4)

我知道这个问题已经过时了,但是在这个时候,我认为我们可以在这里找到SQLite支持.NET的官方实现:http://system.data.sqlite.org/index.html/doc/trunk/www/index.wiki。一篇好的介绍性文章应该在这里找到:http://www.codeproject.com/Articles/236918/Using-SQLite-embedded-database-with-entity-framewo

答案 4 :(得分:3)

这不是您问题的答案,但作为替代方案,您可以使用SQL Compact:

http://www.microsoft.com/Sqlserver/2005/en/us/compact.aspx

它具有良好的LINQ-to-SQL支持,并且(尽管名称)非常适合具有小存储要求的桌面应用。

答案 5 :(得分:2)

在NuGet上有一个名为" LINQ to SQLite"的软件包。我还没试过,但看起来很新鲜。

https://www.nuget.org/packages/linq2db.SQLite/

答案 6 :(得分:1)

这是一个很好的linq to sqlite ..

http://www.devart.com/dotconnect/sqlite/

答案 7 :(得分:1)

使用EntityFramework 7,对SqLite的支持得到了改进,并且可以使用EntityFramework.Commands创建一些迁移。这是一个教程:

https://xamlbrewer.wordpress.com/2016/06/01/getting-started-with-sqlite-and-entity-framework-on-uwp/

作为先决条件,至少应安装PowerShell3。

答案 8 :(得分:0)

由于不再维护DBLinq,我一直在搜索并发现this answer使用Linq to Sql,Entity Framework和SQLite,这些不明确指向了一个解决方案。他链接到的blog post有点过时,但经过一些调整后,我在GitHub上获得了 working example up

它应该在Visual Studio 2013中运行OOTB。它显示添加记录(在另一个表中包含相关记录),修改和删除。 Artist和Album类代表各自表中的记录(我相信实体框架的一部分)。请参阅自述文件,了解一些需要注意的问题。