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

时间:2011-02-23 04:50:59

标签: c# .net app-config configuration-files

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

我在下面的C#代码中做了,我也想在我的app.config文件中做类似的事情。

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

4 个答案:

答案 0 :(得分:9)

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

或者拥有多个app.config文件,例如app.config.debugapp.config.release,并在您的版本中使用相应的文件。

答案 1 :(得分:4)

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

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

答案 2 :(得分:1)

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

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

答案 3 :(得分:0)

由于某种原因,我无法继续工作。似乎不行

<Choose>
    <When Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
      <connectionStrings configSource="App.Debug.config"/>
    </When>
    <Otherwise>
        <connectionStrings configSource="App.Debug.config"/>
    </Otherwise>
  </Choose>