将内存中的SQLite数据库用于带有EF6的WPF应用程序数据库

将内存中的SQLite数据库用于带有EF6的WPF应用程序数据库,sqlite,entity-framework-6,in-memory-database,system.data.sqlite,Sqlite,Entity Framework 6,In Memory Database,System.data.sqlite,我正在使用SQLite和EF6开发一个WPF数据库驱动的应用程序。当用户打开一个项目(SQLite数据库)时,我希望它将其复制到内存中的数据库,在用户编辑项目时进行修改,并在保存时复制回文件 我已经创建了数据库并用它初始化了edmx(首先是数据库)。 目标.NET framework是4.6.1,受我用于通信的库的限制 我知道需要使用SQLite备份API,但我无法将要点与如何使其与EF6一起工作联系起来 这提供了一些希望,但似乎是基于EF Core,尽管EF6+EF Core理论上一起工作,但

我正在使用SQLite和EF6开发一个WPF数据库驱动的应用程序。当用户打开一个项目(SQLite数据库)时,我希望它将其复制到内存中的数据库,在用户编辑项目时进行修改,并在保存时复制回文件

我已经创建了数据库并用它初始化了edmx(首先是数据库)。
目标.NET framework是4.6.1,受我用于通信的库的限制

我知道需要使用SQLite备份API,但我无法将要点与如何使其与EF6一起工作联系起来

这提供了一些希望,但似乎是基于EF Core,尽管EF6+EF Core理论上一起工作,但我无法让它工作:

这就是我要做的:

        //create in memory database
        var imdb = new SQLiteConnection("DataSource=:memory:");
        imdb.Open();

        //load stored database into memory
        using (var source = new SQLiteConnection("DataSource=map_0_0_1.db"))
        {
            source.Open();
            source.BackupDatabase(imdb, "main", "main", -1, null, 0);
        }

        //test EF
        using (var db = new dbContext() ) //????? how??
        {