我有一个包含多个项目(UI,Web服务,数据访问)的winforms解决方案。所有这些项目都有自己的app.config文件。在安装时,我需要根据用户的数据库配置更改数据访问项目中的连接字符串。
但是数据访问项目在安装时创建了一个dll,没有可用于更新的app.config文件。 UI项目是唯一创建了app.config文件的项目。 UI项目引用了数据访问项目,所以我不相信数据访问项目可以"看到" UI项目的配置设置。
我搜索了SO的答案,但没有找到任何具体的情况。我的项目设置方式有问题吗?任何帮助将不胜感激。
答案 0 :(得分:0)
对于遇到此问题的其他人:
我相信我找到了答案here
在Visual Studio中,在每个配置文件的属性上,您可以选择"始终复制"用于复制到输出目录。这将显式创建dll项目的配置文件。
然后在InstallShield中,您可以参考此配置文件(" MyApplication.dll.config"例如),并通过"文本文件更改"更改连接字符串。 "系统配置"下的部分。当提示用户连接到sql server时,InstallShield可以使用这些连接属性来更改配置文件中的连接字符串。