This is an update to http://blogs.msdn.com/b/irenak/archive/2009/12/16/sysk-375-visual-studio-add-in-for-managing-configuration-files-across-environments.aspx. The provided code is upgraded for Visual Studio 2010, and also now supports nested projects (e.g. a project that is a container for other projects).
To deploy, copy ConfigAddIn.AddIn to C:\Users\YourLoginName\Documents\Visual Studio 2010\Addins folder. Open it in a text editor, and update the path to where you put ConfigAddIn.dll and ConfigAddIn.dll.config files. Change TargetEnvironments setting in ConfigAddIn.dll.config to your desired environment names:
<applicationSettings> <ConfigAddIn.Properties.Settings> <setting name="TargetEnvironments" serializeAs="String"> <value>;Dev;Test;Prod</value> </setting> </ConfigAddIn.Properties.Settings> </applicationSettings>
[Aug 30, 2010] - Fixed a bug (config file had older version for System.dll assembly). Updated source posted.