首页 > 解决方案 > 带有 EF Core 的沙盒 Sqlite

问题描述

我正在制作一个小型网络应用程序,目前正在使用sqlite+EF Core 2.1来存储数据。有什么解决方案可以让我的 sqlite 数据库文件沙箱化吗?

我的意思是将我的sqlite数据库及其数据触发器从我的物理db文件加载到内存中。

每次打开/关闭 VS 调试器时,都会使用物理文件中的现有数据刷新数据库

谢谢,

标签: c#sqliteentity-framework-coreef-core-2.1

解决方案


这里有一些代码可以按照你的要求做:

var sandboxConnection = new SqliteConnection("Data Source=:memory:");
sandboxConnection.Open();

using (var physicalConnection = new SqliteConnection("Filename=physical.db"))
{
    physicalConnection.Open();
    physicalConnection.BackupDatabase(sandboxConnection);
}

optionsBuilder.UseSqlite(sandboxConnection);

推荐阅读