我有(经过一番努力显著)得到了与的DBLinq单对OS X的最新版本的工作。

通过的DBLinq / SQLite的有任何人successfulyl创建的数据库实体?

例如,我有如下表:

CREATE TABLE UserType (
    id integer primary key,
    description text )

我已经产生了我的* cs文件和我使用下面的代码试图创建一个新的用户类型条目:

UserType newUserType = new UserType();
newUserType.id = null // Attempting to get SQLite to increment
newUserType.description = "Administrator";

db.UserType.InsertOnSubmit(newUserType);

db.SubmitChanges();

要的SubmitChanges的调用乱扔无效的语法异常的具体涉及到@ (我猜在一个参数化查询做插入)。它看起来像正在生成的代码是SQL Server特定。是否有一个修复或标志我失踪,或通过插入的DBLinq记录的SQLite不支持?

有帮助吗?

解决方案

原来,使用时的DBLinq,你需要修改数据库连接字符串,Mono的将System.Data.Linq知道它的生成SQL代码时使用的DB提供程序。

旧:

SqliteConnection("Data Source=MyDatabase.sqlite");

新:

SqliteConnection("DbLinqProvider=Sqlite;Data Source=MyDatabase.sqlite");

就这么简单。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top