我可以在 app.config 文件中添加条件吗?

Posted

技术标签:

【中文标题】我可以在 app.config 文件中添加条件吗?【英文标题】:Can I add conditions in app.config file? 【发布时间】:2011-07-02 12:13:11 【问题描述】:

是否可以在 app.config 文件中添加条件?

我在 C# 代码中执行以下操作,我也想在我的 app.config 文件中执行类似操作。

#if (Debug)
.......
#else
.....
#endif

【问题讨论】:

【参考方案1】:

您应该能够以编程方式执行此类操作,方法是将相关部分放在两个不同的配置文件中,然后在应用程序启动时加载适当的配置文件。您的大部分配置将在主 app.config 中,其余部分将有第二个配置文件。

我没有手头的语法,但它基本上与使用用户特定配置的 user.config 相同。

【讨论】:

【参考方案2】:

这是不可能的,尽管在 Visual Studio 2010 中有一项功能可以让您将 configuration-dependent transformations 应用于 Web.config 文件,但仅限于使用 msdeploy 发布时。

可执行应用程序没有这样的转换。您可能想考虑使用构建后操作来复制发布或调试配置文件。

【讨论】:

对于可执行应用程序,现在可以使用marketplace.visualstudio.com/…实现相同的目标【参考方案3】:

您可以尝试某种类型的app.config 转换,如下所示:http://fknut.blogspot.com/2009/11/appconfig-transformation-with-new.html

或者拥有多个app.config 文件,例如app.config.debugapp.config.release,并在您的构建中使用适当的文件。

【讨论】:

以上是关于我可以在 app.config 文件中添加条件吗?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 app.config 文件添加到项目中

Web.config 转换可以与 App.config 文件一起使用吗? [复制]

类库的 app.config

如何在 app.config xml 文件中添加 Gitlab 自定义变量

可以在 app.config 中模拟控制台应用程序吗?

我可以在linux中获取msi文件的源代码并添加一些条件吗?