ACTUALIZACIÓN
Con Visual Studio 2010 y , que todo esto ha sido integrado en el IDE. Si hace clic derecho en su archivo de configuración, VS le da la opción de generar una configuración de transformación para cada una de sus configuraciones de compilación. Si fuera a crear una configuración de compilación para cada uno de sus entornos, MSBuild generará automáticamente el Web.config/app.config correcto para usted.
Respuesta corta, sí. Puede tener los diferentes archivos y en su script de compilación, pero tendrá que cambiar el nombre de la correcta a "App.config" y estará configurado (antes de compilar).
Respuesta larga, lo que debe utilizar es la herramienta Enterprise Library MergeConfiguration. Esto le permite usar su App.config existente como base y definir deltas por entorno. La herramienta fusionará la base y el delta para generar los archivos de configuración específicos del entorno. Todavía necesitará cierta lógica en un script de compilación para aplicar el archivo de configuración correcto.
Al instalar Enterprise Library en su máquina, puede hacer clic con el botón derecho en el archivo de configuración en Visual Studio y editarlo a través de la herramienta de configuración. Puede usarlo para definir sus entornos y la configuración de la aplicación y las cadenas de conexión para anular por entorno.
http://entlib.codeplex.com/
Esto funcionó. He puesto copy $ (ProjectDir) app. $ (ConfigurationName) .config $ (ProjectDir) app.config en el Comando Build. – Rita