DebugとReleaseでApp.configを切り替える
ビルドイベントでconfigファイルをリネームするなどいろいろ方法があるようですが、そういったバッチファイルでやるよりも、こちらで書かれている方法がシンプルかなと思った。
http://www.timvw.be/easily-switching-between-appconfig-files-with-msbuild/
<propertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug Customer1|AnyCPU' "> <debugSymbols>true</debugSymbols> <debugType>full</debugType> <optimize>false</optimize> <outputPath>bin\Debug\</outputPath> <defineConstants>DEBUG;TRACE</defineConstants> <errorReport>prompt</errorReport> <warningLevel>4</warningLevel> <appConfig>App.Customer1.Config</appConfig> </propertyGroup>
propertyGroupのなかにappConfigという要素を入れ、そこでその条件下におけるconfigファイルを指定するだけです。簡単(まあ、プロジェクトファイルを直接編集しないといけないですが)。
追記
ビルドイベントでapp.configを差し替える方法だと、ClickOnce発行時のビルドで走ってくれないようなので、やはり上記の方法のほうがよさげ。