你如何使用LINQ与Sqlite

时间:2008-11-25 23:06:46

标签: c# .net linq sqlite

有人会解释如何让LINQ使用Sqlite。

8 个答案:

答案 0 :(得分:13)

答案 1 :(得分:11)

Joe Albahari的LINQPad现在支持Sqlite:http://www.linqpad.net/Beta.aspx。一个LINQ工具来统治它们。

答案 2 :(得分:4)

CMS提供的链接不再有效。我已经使用了这个one,因为它现在似乎已经融入他们的SQL lite ADO .NET提供程序。

不幸的是,他们仍然不支持VS的设计师模式来创建类:(

另请注意,SQL Server compact不支持LINQ类的设计模式!但是,如果要使用实体框架,则设计器适用于SQL lite和SQL Server compact:)

答案 3 :(得分:2)

是的,CMS提到了SqlLite Linq Provider

查看SQL server compact,它适用于Linq

There is another thread on SO which you should check

答案 4 :(得分:2)

您可以使用此:http://code.google.com/p/dblinq2007。 虽然看起来该项目仍处于Alpha阶段,但IMO现在实际上非常稳定。当然,如果你有一个庞大的项目,最好考虑使用像MySQL或SQL Compact这样的东西。我不喜欢SQL Server,因为它过于臃肿,并且提供的功能并不比SQL Compact或MySQL更多

答案 5 :(得分:1)

我想补充一点,你可以使用Linq to Sql with SqlLite,并有几个规定:

  1. 你不能使用Linq to Sql设计器,这意味着你必须手动滚动你的课程。
  2. 您必须小心不要执行某些操作,否则会导致SqlLite不支持的Sql代码。
  3. 例如,您不能在任何Linq查询中使用FirstOrDefault(),因为它会导致类似:

    select top 1 * from table where ...
    

    由于SqlLite不支持“前1”语法,因此您将发出运行时Sql错误。

    除此之外,我一直在使用Linq to Sql with SqlLite,在基本CRUD操作方面取得了巨大成功。

答案 6 :(得分:0)

检查此提供商:

SqlLite Linq Provider

另外,您可以考虑使用具有非常好的LINQ-to-SQL支持的SQL Compact

答案 7 :(得分:0)

这次有没有好工具来做到这一点!

SQLite的LINQ提供程序都处于alpha阶段(例如:dblinq2007)。在商业目的中使用它是非常大的风险!所以也许将来......

如果你不想使用ADO.NET,那就有很好的结果:phxsoftware