c# – 创建安装项目时如何使用最终的{project} .exe.config文件

c# – 创建安装项目时如何使用最终的{project} .exe.config文件,第1张

概述我已经为dev和prod创建了一个具有特定app.config的控制台应用程序(blah.exe).这些名为dev_app.config和prod_app.config.我在我的csproj文件*中连接了一个AfterBuild目标,它将正确的配置文件作为blah.exe.config复制到bin目录. 我还为这个控制台应用程序创建了一个安装项目,但我遇到了一个小问题.似乎安装项目使用项目目录中的 我已经为dev和prod创建了一个具有特定app.config的控制台应用程序(blah.exe).这些名为dev_app.config和prod_app.config.我在我的csproj文件*中连接了一个AfterBuild目标,它将正确的配置文件作为blah.exe.config复制到bin目录.

我还为这个控制台应用程序创建了一个安装项目,但我遇到了一个小问题.似乎安装项目使用项目目录中的实际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文件夹中的最终配置文件,而不是如何管理配置或创建配置文件的方法.

*改编自Deploy an app.config based on build configuration

解决方法 我一直在使用完全相同的场景,但我使用的是BeforeBuild而不是AfterBuild,它一直很好.我一直在网络和windows项目上这样做.以下是我正在使用的代码.
<Target name="BeforeBuild">    <ItemGroup>      <ConfigSourcefiles Include="Web.$(Configuration).config" />      <ConfigDestinationfiles Include="Web.config" />    </ItemGroup>    <copy Sourcefiles="@(ConfigSourcefiles)" Destinationfiles="@(ConfigDestinationfiles)" />  </Target>

希望这可以帮助.

总结

以上是内存溢出为你收集整理的c# – 创建安装项目时如何使用最终的{project} .exe.config文件全部内容,希望文章能够帮你解决c# – 创建安装项目时如何使用最终的{project} .exe.config文件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1243293.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存