我如何将我的数据库文件捆绑到我的应用程序中,为旁加载安装做好准备?

How can I bundle my database file into my app, ready for a side load install?

我正在创建一个 Windows 10 通用应用程序,它使用本地 SQLite 数据库。 为了让应用程序使用数据库文件它必须放在:

C:\Users\<Username>\AppData\Local\Packages\<Name of Package>\Local State

现在我明白这是应用程序的 'local' 文件结构。但是我有一个应用程序需要与之交互的预制数据库,因此应该在安装时作为应用程序的一部分进行捆绑。

在通过旁加载安装分发我的应用程序时,是否有一种方法可以以可用的方式包含我的数据库?

此外,这个问题非常重要,因为将我的应用程序推送到移动 phone 或其他 Windows 10(非桌面)设备时,这个 'C:\' 目录将不存在.

不能直接将数据库打包为读写数据(本地状态)。如果你只需要从数据库中读取,你可以将它包含在你的项目中并从 Package.Current.InstalledLocation 中读取。

如果您需要写入数据库,但它包含一些您想随应用一起发布的初始值,那么您仍然需要将数据库包含在您的项目中,然后从 InstalledLocationApplicationData.Current.LocalFolder 如果您的应用程序启动时它不存在。

您可以通过各种方式将现有数据库导出为 SQL 脚本并将其保存在您的项目资产中。 在应用程序的第一个 运行 中,您可以在 LocalFolder 中创建 Sqlite 文件,并 运行 使用 CREATE 和 INSERT 查询创建脚本。