我已经为dev和prod创建了具有特定app.config的控制台应用程序(blah.exe)。这些被命名为dev_app.config
和prod_app.config
。我在我的csproj文件*中连接了一个AfterBuild
目标,它将正确的配置文件作为blah.exe.config
复制到bin目录。如何在创建安装项目时使用最终的{project} .exe.config文件
我也为这个控制台应用程序创建了一个安装项目,但我遇到了一个小问题。似乎安装项目使用项目目录中的实际app.config
而不是最后的blah.exe.config
(位于bin目录中)。
|--Bin
| |--Debug
| |--Blah.exe.config <--- I want the setup project to use this file
|--app.config <--- Setup project uses this file at the moment
|--dev_app.config
|--prod_app.config
我怎么能强迫安装项目使用在bin文件夹中生成最终的配置文件,而不是实际app.config
文件?
附加信息:
我目前的解决方案包括增加另一个AfterBuild
命令,它会覆盖实际app.config
文件。我不喜欢这种方式,因为它迫使我有一个我不需要的额外文件。此外,自从我修改构建时被覆盖的app.config
文件以来,拥有此文件已经引起了我一些悲伤。现在的问题是关于如何让安装项目使用bin文件夹中的最终配置文件以及如何管理配置或创建配置文件的方式NOT。
*从Deploy an app.config based on build configuration
您是否在使用DEBUG版本进行开发,然后发布用于生产?如果是这样,你可以看看使用#if DEBUG http://msdn.microsoft.com/en-us/library/4y6tbswk.aspx,也许加载不同的配置文件基于使用http://msdn.microsoft .com/en-us/library/ms223161.aspx – 2011-02-18 05:31:22
@astander,对于Debug,是`dev_app.config`,对于Release为`prod_app.config`。 – Ahmad 2011-02-18 05:33:51