在winui3项目中找不到使用Entity Framework Core sqlite创建的sqlite db文件

问题描述 投票:0回答:1

我有一个 WinUI 3 项目,我在其中初始化了我的

DbContext
,如下所示:

public string DbPath; 

public MyAppContext()
{
    var folder = Environment.SpecialFolder.LocalApplicationData;
    var path = Environment.GetFolderPath(folder);
    DbPath = System.IO.Path.Join(path, "MyApp.db");
}

protected override void OnConfiguring(DbContextOptionsBuilder options)
=> options.UseSqlite($"Data Source={DbPath}");

我在

EnsureCreated()
中使用
App.xaml.cs
来确保创建数据库。

我尝试添加数据(使用代码),并检查它是否持久存在,到目前为止一切都很好。

问题是:我希望能够在开发功能时手动将数据添加到文件中,但我在任何地方都找不到该文件。

使用断点检查了

DbPath
的值,得到了

C:\Users\rahma\AppData\Local\MyApp.db

但是那里什么也没有。

c# sqlite entity-framework-core winui-3
1个回答
0
投票

假设这是一个打包应用程序,并且由于通常打包应用程序将其数据存储在指定的文件夹中,因此您的“MyApp.db”应该存储在这些文件夹之一中,如果我不得不猜测的话,就是 LocalCache 文件夹。

string localCacheFolder = ApplicationData.Current.LocalCacheFolder.Path;

对于您的 SQLite *.db 文件,我认为您应该检查这些步骤。它们适用于 UWP 应用程序,但也应适用于打包的 WinUI 3 应用程序。

© www.soinside.com 2019 - 2024. All rights reserved.