你如何使用LINQ与Sqlite
有人会解释如何让LINQ使用Sqlite。
这里有SQLite的SQL Linq提供程序以及其他一些DB
Joe Albahari的LINQPad现在支持Sqlite: http : //www.linqpad.net/Beta.aspx 。 一个LINQ工具来统治它们。
CMS提供的链接不再起作用。 我已经使用过这个,因为它现在似乎已经融入他们的SQL lite ADO .NET提供程序。
不幸的是,他们仍然不支持VS的设计师模式来创建类:(
另请注意,SQL Server compact不支持LINQ类的设计模式! 但是,如果您想使用entity framework,设计器确实适用于SQL lite和SQL Server compact 🙂
是的,CMS提到了一个SqlLite Linq Provider
查看SQL server compact,它可以很好地与Linq配合使用
在SO上有另一个线程你应该检查
您可以使用此function: http : //code.google.com/p/dblinq2007 。 虽然看起来该项目仍处于Alpha阶段,但IMO现在实际上非常稳定。 当然,如果你有一个庞大的项目,最好考虑使用像MySQL或SQL Compact这样的东西。 我不喜欢SQL Server,因为它太过臃肿,并且提供的function并不比SQL Compact或MySQL多得多
我想补充一点,你可以使用Linq to Sql with SqlLite,并有几个规定:
- 你不能使用Linq to Sql设计器,这意味着你必须手动滚动你的类。
- 您必须小心不要执行某些操作,这将导致SqlLite不支持的Sql代码。
例如,您不能在任何Linq查询中使用FirstOrDefault(),因为它会导致类似于:
select top 1 * from table where ...
由于SqlLite不支持“前1”语法,因此您将gt运行时Sql错误。
除此之外,我一直在使用Linq to Sql和SqlLite,在基本的CRUD操作方面取得了巨大的成功。
检查此提供者:
SqlLite Linq提供程序
您还可以考虑使用SQL Compact ,它具有非常好的LINQ-to-SQL支持。
在这个时候没有好的工具来做到这一点!
SQLite的LINQ提供程序都处于alpha阶段(例如: dblinq2007 )。 在商业目的中使用它是非常大的风险! 所以也许将来……
如果你不想使用ADO.NET,那就有很好的ove: phxsoftware 。