包含数据库的可执行文件

时间:2014-06-25 03:02:38

标签: c# database

我想用c#创建单个可执行文件 与我的数据库和应用程序。我想在没有互联网的客户端机器上安装该应用程序。如何将我的数据库包含到我的可执行文件(.exe)中,让客户机中的用户保存和检索信息。 谢谢

1 个答案:

答案 0 :(得分:0)

对于像SQLite这样的单文件数据库,这是最简单的。创建数据库,使用其中一个压缩API将其打包,然后将结果作为资源包含在应用程序中。在启动时,当应用程序无法找到SQLite数据库文件时,它可以从资源中解压缩,将其保存到磁盘,然后继续。从那时起,用户正在处理磁盘上的数据库副本,并可以进行任何他们喜欢的更改。

如果您正在使用某种类型的正确SQL服务器,那么它有点困难,但基本上是相同的想法。将数据收集到您可以使用的格式,压缩它并绑定到资源中。在启动时,如果数据库不存在,则使用您需要的任何脚本或EF代码创建它,然后解压缩资源并将所有数据加载到数据库中。

当然,如果您的数据库非常大,那么您的应用程序中会有很多臃肿。最好将应用程序及其所需的任何数据打包为ZIP或类似文件中的单独文件,然后分发ZIP文件。用户解压缩ZIP文件并运行您的应用程序,该应用程序会在解压缩到的文件夹中找到所需的所有内容。

老实说,我要使用ZIP文件选项,除非你有非常的理由不这样做。