Support web.config style Transforms on any file in any project type
Web.config Transforms offer a great way to handle environment-specific settings. XML and other files frequently warrant similar changes when building for development (Debug), SIT, UAT, and production (Release). It is easy to create additional build configurations to support multiple environments via transforms. Unfortunately, not everything can be handled in web.config files many settings need to be changed in xml or other "config" files.
Also, this functionality is needed in other project types - most notably SharePoint 2010 projects.
The applicationInsights.config file should support .config transformations.
We want to use different logging based on the selected build profile so our different staging environments can have different type of logging.
Right now there is no easy way to use AI with "Publish" in VS.
This way, you can remove the profile part from the .config file and it will work the same way as the rest of VS .config files works.
No need to invent the wheel again.
In a continuous integration scenario you will have a Team Build set up to execute on check-in. This will kickoff a deploy to a continuous integration server and will execute unit tests against the deploy. This works fine for just running unit tests. However if you want to leverage the Unit Test framework to do some integration testing you'll run into problems with configuration for connectionstrings and webservice uri's. You'll need the ability to change the app.config for unit test depending on the environment it is testing against. Best way to do this seems to be by using the same strategy as is used for web.configs.
Support for Web.config transformations have been supported for Web Application Projects, however App.config (or Xml transformations in general) have lacked this feature. Thankfully, the SlowCheetah extension provides this functionality, but shouldn't Visual Studio support such a useful feature, natively?
Config/Xml transformations are useful for projects of all types, outside of just web projects. Windows Services are typically deployed to multiple environments (Dev, Lab, QA, Production, etc.), just like web applications. Transformations would benefit enterprise developers, just the same as web developers.
I don't understand why web config transformations come bundled within Visual Studio, but to transform fat client (Win Forms, WPF) apps, you have to download the Slow Cheetah extension. Save us all the trouble and make this an out of the box feature.
Config transforms change behavior that should be easily testable.
Without this option either the web.config must be edited or the app must be published.
Please add an easy way to use a config transform during debug and test without changing the web.config itself. If the config file is changed, then it would be easy to accidentally commit those changes to source control.
When creating WinForm projects, our projects will set the correct app.config file to be used. During Debug mode, however, the application debug code does not know which .config to use and as such reverts back to the system app.config. It would be great if the configuration manage would allow one to specify which confi file for that configuration to use (system default would be app.config if not specified)
Kenneth LeFebvre commented
I cannot believe that you haven't added this already!
If there is a better way to manage configuration changes across environments, then please educate us. What do you do, within Microsoft?
Managing different app.config files for different environments is an extremely useful feature to have, and the fact that it already exists for web projects shows that someone as MS agrees. Please take the next logical step and open up these transforms for other project-types!
Ilya Gotfryd commented
My whole deployment system depends on presence of this feature. Very convenient and desperately needed feature. Please put it in.
This is one of those 'low hanging fruit' features that should be part of a quarterly update. Just add it already! Or are we still debating the ALL CAPS thing?
Adam Hong commented
Definitely need this functionality to perform my job functions
This is one of the things that actually make it possible to use Visual Studio for professional purposes with multiple environments. It really needs to get official support! Visual Studio/MSBuild is great for the single developer, but it's always been so-so as far as configuration and deployment is concerned.
Working in a highly regulated industry, my team developed a full CI process using TFS and SlowCheetah to deal with the typical pitfalls that large organizations suffer in the area of release management. SlowCheetah is absolutly critical in the CI process as it lets the build system target any environment without hacks to pick and choose the right config files.
I strongly urge you to consider adding this feature to Visual Studio 2014. As referenced by the comments and the votes, this is a feature that the Visual Studio community needs. I appreciate that Chuck and Sayed produced something to fill the gap.
Without SlowCheetah style transforms in Visual Studio 2014 I will not allow any development team member to upgrade.
it is imperative that all configuration on a per environment basis are stored in source control
Holy cow, REALLY sad SlowCheeta development is stopping. Really too bad, and pretty scary when the transition to VisualStudio 2014 comes.
This is quite troubling from a release-management scenario, particularly on Azure. WebJobs have been hugely helpful in quickly architecting prototypes and small one-offs, and invaluable in adding scheduled tasks to the cloud.
The lack of transforms for App.Configs really neuters this approach.
Kenneth Scott commented
Please include this functionality. It is desperately needed.
Slow Cheetah is now unsupported by the developer for future versions of Visual Studio. Find out more here:
Gary Barclay commented
Clearly, this should have been included in Visual Studio for a number of years - I'm amazed it's still not available. Please add this in.
Ewout de Boer commented
And create an option that the transformations run on a rebuild. We currently use the transformations to for production, staging and test environments, but also for developer specific items. For example all developers have their own database, for unit, integration and manual testing. All developers on the team have their own configuration setting and tranform file(s)
We currently have the transformations working on a rebuild on all types of project types, but this requires manual changes to the project file.
This is functionality that is an ABSOLUTE MUST!
Any developer that has ever worked on a client project with a 2K line web.config will completely agree.
Having separate configuration files is essential from an organizational point of view and you cannot use transformations if you want to do this.
Slow Cheetah solved all these issues.
This functionality should have been in Visual Studio a long time ago.
This needs to be a feature now that Slow Cheetah won't be supported on the newer versions of VS
Scott Klueppel commented
I never understood why this hasn't been a part of VS from the first day config transform came out. I can't live without these features. Please add this to VS proper.
Adam Pooler commented
Claire Thomson commented
really needs to be included across all types!
We were looking to use transformed config files, but while our application is web and MVC, there are crucial console mode parts too. Therefore, we were unable to use the Transform features in VS2013 and have to stick to doing all the config handling manually. Really hope the VS Team adds this feature for all project types.