代码之家  ›  专栏  ›  技术社区  ›  Justin Niessner

通过DbLinq使用Linq到SQLite创建记录

  •  2
  • Justin Niessner  · 技术社区  · 16 年前

    有人通过DbLinq/Sqlite成功创建了数据库实体吗?

    例如,我有下表:

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

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

    对SubmitChanges的调用引发了一个关于无效语法的异常 具体涉及@

    1 回复  |  直到 16 年前
        1
  •  3
  •   Justin Niessner    16 年前

    事实证明,在使用DbLinq时,需要修改DB连接字符串,以便Mono的System.Data.Linq知道在生成其SQL代码时使用哪个DB提供程序。

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

    新的:

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

    就这么简单。

    推荐文章