2

我正在编写一个便携式 C# 应用程序,旨在作为 USB 上的单个可执行文件运行。它需要能够从 SQLite 数据库中提取一些数据。因为它是可移植的,所以不能在本地安装一些东西。我见过这样这样的问题,但它们需要安装第三方软件。

如何在不丢失可移植性的情况下获取这些数据?

编辑: 我尝试使用 System.Data.SQLite NuGet 包。它可以工作,但突然间我从一个可执行文件变成了一个可执行文件、一个 .dll 和两个附加文件夹。我可以处理(尽管不愉快)添加一个 dll,但这太多了。

4

3 回答 3

1

你有两个选择:

  1. 使用IlMerge
  2. 将程序集作为资源嵌入
于 2013-09-07T14:23:32.463 回答
0

好吧,我认为它会得到最好的结果:我把它归结为一个可执行文件和一个 dll 文件。

为此,我将可执行文件的体系结构从 Any CPU 更改为仅 x86,然后安装了“System.Data.SQLite.x86”NuGet 包。

如果有人知道如何在单个可执行文件中保留该功能,我将不胜感激。

于 2013-09-07T09:36:52.983 回答
0

试试 Costura.Fody(浏览 Nuget 包),我通常使用这个,它将所有内容打包在一个 exe 中,我相信它应该可以工作。

于 2018-03-18T22:45:02.997 回答