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

时间:2015-10-07 15:01:06

标签: win-universal-app

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

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

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

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

此外,这个问题至关重要,因为这个C:\&#39;将我的应用程序推送到移动电话或其他Windows 10(非桌面)设备时,目录将不存在。

2 个答案:

答案 0 :(得分:5)

您无法将数据库直接打包为读写数据(本地状态)。如果您只需要从数据库中读取数据,则只需将其包含在项目中并从Package.Current.InstalledLocation中读取即可。

如果您需要写入数据库,但它包含您希望随应用程序一起提供的一些初始值,那么您仍需要在项目中包含数据库,然后将其从InstalledLocation复制到ApplicationData.Current.LocalFolder如果您的应用启动时它不存在。

答案 1 :(得分:2)

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