首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Visual Studio:区分调试模式和发布模式的app.config

Visual Studio:区分调试模式和发布模式的app.config
EN

Stack Overflow用户
提问于 2009-08-18 17:54:08
回答 7查看 52.9K关注 0票数 51

在发布模式下构建时,有没有办法自动使用单独的app.config?

换句话说,我想用一个app.config测试,然后用另一个发布。

目前,我保留了一个单独的副本,名为app.config.production,并在构建发布后手动覆盖bin\Release\Application.exe.config。

EN

回答 7

Stack Overflow用户

发布于 2018-05-16 22:45:13

通过上下文菜单在解决方案资源管理器中卸载项目。

通过上下文菜单编辑.csproj文件,并添加以下内容:

代码语言:javascript
运行
复制
<PropertyGroup>
    <AppConfig>App.$(Configuration).config</AppConfig>
</PropertyGroup>
票数 38
EN

Stack Overflow用户

发布于 2014-12-18 20:35:10

我最近对一个类似的SO话题发布了一个非常迟的回复:https://stackoverflow.com/a/27546685/2798367

为了清楚起见,我在这里重复一遍:

这有点晚了,但我偶然发现了一种为app.config文件实现web.transform方法的好方法。(例如,它使用名称空间http://schemas.microsoft.com/XML-Document-Transform)

我认为它很“好”,因为它是一种纯方法,不需要第三方软件。

根据您的各种构建配置,会派生出一个父/默认App.config文件。然后,这些后代只会覆盖它们需要的内容。在我看来,这比必须维护x数量的配置文件要复杂和健壮得多,这些配置文件被完整地复制,例如在其他答案中。

已在此处发布演练:http://mitasoft.wordpress.com/2011/09/28/multipleappconfig/

听着,妈妈-在我的IDE中没有显式的构建后事件!

票数 19
EN

Stack Overflow用户

发布于 2015-11-26 18:01:56

一种简单而快速的方法是创建第二个文件"App.release.config“,并插入此预构建事件:

代码语言:javascript
运行
复制
IF $(ConfigurationName) == Release COPY /Y "$(ProjectDir)App.config" "$(ProjectDir)App.debug.config"
IF $(ConfigurationName) == Release COPY /Y "$(ProjectDir)App.release.config" "$(ProjectDir)App.config"

和这个构建后事件:

代码语言:javascript
运行
复制
IF $(ConfigurationName) == Release COPY /Y "$(ProjectDir)App.debug.config" "$(ProjectDir)App.config"

这可能有点奇怪,但它将允许您继续使用仍然链接到App.config.Settings文件作为调试设置。App.release.config必须手动构建,但是切换此功能非常容易。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1295497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档