【问题标题】:BackUp sqlite db from UWP app to One drive从 UWP 应用程序备份 sqlite db 到一个驱动器
【发布时间】:2016-07-30 08:05:18
【问题描述】:

我有一个 UWP 应用程序并希望将其数据库备份到一个驱动器实际上我正在使用带有 EF7 RC1 的 UWP 的 sqlite。

我想要的只是从我的数据库复制到 OneDrive 以在设备之间同步它,但我完全迷失了,在我的 win10 手机上找不到数据库。

我的 W10 手机上的 .db 位置是什么? 哪个是 W10 的最佳 OneDrive API? 有一个样本,我可以在其中阅读一些信息?

【问题讨论】:

  • 那么你找到你的数据库文件了吗?

标签: c# sqlite uwp onedrive


【解决方案1】:

您的数据库应该在您的应用程序中本地存储

在桌面上,要找到它,在 Visual Studio 中,打开 Package.appxmanifest 文件,打开 Packaging 选项卡 并复制包名称。

打开您的文件资源管理器,导航到文件夹 C:\Users\userName\AppData\Local\Packages。 (不要忘记将 userName 替换为您的真实用户名。然后搜索包含您的包名称的文件夹。

如果您打开文件夹 LocalState,您应该会找到您的数据库文件。

通过代码访问它(也可以在手机上使用):

var folder = ApplicationData.Current.LocalFolder;
var files = await folder.GetFilesAsync();
var dbFile = files.FirstOrDefault(x => x.Name == "myDatabase.db");

如果您的数据库是在您的应用程序部署之前创建的,您的数据库将部署在您的应用程序安装文件夹中:要找到它,请使用var folder = Windows.ApplicationModel.Package.Current.InstalledLocation;

对于 OneDrive API,您有一些示例:

【讨论】:

  • 是的,但您无法使用文件资源管理器浏览它。只需将查看 localFolder 或 installationFolder 的代码添加到您的 MainPage OnNavigatedTo 方法中,然后在 folder.GetFilesAsync 之后,只需显示所有文件名。您应该能够找到您的数据库。我在我的 dbContext 文件中测试了以下初始化代码:protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseSqlite("Filename=Blogging.db"); }
猜你喜欢
  • 2014-09-11
  • 2019-12-16
  • 2018-04-21
  • 1970-01-01
  • 2014-12-16
  • 1970-01-01
  • 2011-03-10
  • 1970-01-01
  • 2018-04-13
相关资源
最近更新 更多