0

我有一个包含多个项目(UI、Web 服务、数据访问)的 winforms 解决方案。所有这些项目都有自己的 app.config 文件。在安装时,我需要根据用户的数据库配置更改数据访问项目中的连接字符串。

但是数据访问项目在安装时会创建一个 dll,没有可用于更新的 app.config 文件。UI 项目是唯一一个创建了 app.config 文件的项目。而且UI项目有对数据访问项目的引用,所以我不相信数据访问项目可以“看到”UI项目的config设置。

我已经搜索了一个答案,但没有找到任何特定于这种情况的东西。我的项目设置方式有问题吗?任何帮助,将不胜感激。

4

1 回答 1

0

对于其他面临此问题的人:

我相信我在这里找到了答案

在 Visual Studio 中,在每个配置文件的属性上,您可以为复制到输出目录选择“始终复制”。这将为 dll 项目显式创建配置文件。

然后在 InstallShield 中,您可以参考此配置文件(例如“MyApplication.dll.config”),并通过“系统配置”下的“文本文件更改”部分更改连接字符串。当提示用户连接到 sql server 时,InstallShield 可以使用这些连接属性来更改配置文件中的连接字符串。

于 2014-05-27T15:59:38.363 回答