C# SQLite和LINQ到SQL-DataContext和数据库创建问题

C# SQLite和LINQ到SQL-DataContext和数据库创建问题,c#,.net,sqlite,linq-to-sql,C#,.net,Sqlite,Linq To Sql,我用C#编写了一个.NET应用程序,它使用SQLite数据库。我想使用LINQtoSQL作为ORM来处理数据库。因此,我的项目中安装了两个nuget软件包:和 以下是我的应用程序中的一些简化代码: [Table] public class Entity { [Column(IsPrimaryKey = true, IsDbGenerated = true, CanBeNull = false)] public int Id { get; set; } [Column]

我用C#编写了一个.NET应用程序,它使用SQLite数据库。我想使用LINQtoSQL作为ORM来处理数据库。因此,我的项目中安装了两个nuget软件包:和

以下是我的应用程序中的一些简化代码:

[Table]
public class Entity
{
    [Column(IsPrimaryKey = true, IsDbGenerated = true, CanBeNull = false)]
    public int Id { get; set; }

    [Column]
    public string Data { get; set; }
}

public class EntityDataContent : DataContext
{
    public EntityDataContent(IDbConnection connection) : base(connection)
    {
    }

    public Table<Entity> Entities
    {
        get { return GetTable<Entity>(); }
    }
}
它无法工作,因为其中没有数据库和表。因此,首先应该创建它们:

using (EntityDataContent dataContext = new EntityDataContent(connectionString))
{
    if (!dataContext.DatabaseExists())
    {
        dataContext.CreateDatabase();
    }
}
问题来了。此代码引发SQLiteException,并显示以下消息:

SQL logic error or missing database
near "DATABASE": syntax error
这一切都是因为数据库提供者试图在
createdatabase
的帮助下创建数据库,但SQLite中没有这样的操作。文件本身已经是一个数据库

因此,我假设我的
DataContext
使用默认的数据库提供程序,而不是相应的nuget包提供的SQLite实现。我不知道如何解决这个问题,问题出在哪里。你有什么建议吗

SQL logic error or missing database
near "DATABASE": syntax error