使用LINQ创建记录经向的DBLinq源码
题
我有(经过一番努力显著)得到了与的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");
就这么简单。
不隶属于 StackOverflow