SlowCheetah - XML Transforms


This package enables you to transform your app.config or any other XML file based on the build configuration. It also adds additional tooling to help you create XML transforms.. Written by: Sayed Ibrahim Hashimi, Chuck England and Bill Hiebert

(146) Review
Visual Studio
2013, 2012, 2010
Download (221,171)
E-mail Twitter Digg Facebook
Add to favorites
Reviews (146)
Q and A (258)
Sign in to write a review
Sort by:

by rostolator | October 20 2016

a link to the VS2015 compatible version would be very helpful .. oh thanks Mike (3 comments below)

by CodeSourcerer | October 20 2016

by Jürgen Bayer | September 09 2016

Works perfectly and is even better than the ASP.NET transformation since it transforms even when running the project in Visual Studio.

by Mike DePouw | May 27 2016

For whatever reason, there's a new project for VS 2015.

by Ondřej | May 11 2016

Looks extremely useful and exactly what I need, but it does not work in Visual Studio 2015 Community Update 2.

by nkomp18 | May 11 2016

I am extremely frustrated with SlowCheetah.
I tried to use it in many occasions and it never quite worked for me.
The main problem is that I have multiple configurations like:
QA, UAT, PRD, Live, Local, DEV, etc and I want to be able to define those myself.
Attempting to change the configuration manager of the solution causes an array of problems that need hours to be resolved. Notably, the underlying projects will still not generate the new build configs, which leads to build problems, DLL issues and finally I can't get rid of Debug and Release configurations of which I don't want any configs to be generated.
Also if I add my configurations to the configuration manager,
How hard is it to let the user define these in a simple XML file?
Until this very simple feature is added, SlowCheetah is of no use to me and I assume many other developers

by EvangelistaLion | May 10 2016

When work in VS 2015 please ?? Thank you

by Bhuard | May 06 2016

Used it for SQL unit test app.config.


by Dave_MEC | January 19 2016

This is an extension I can't live without. We use this in everyone of our applications. It should be added as part of Visual Studio going forward.

by jmelllo | November 19 2015

by DragonOfId | November 12 2015

This extension has made configuring console programs for multiple environments SO much easier. I have no idea why this functionality isn't native in VS!

by George Birbilis | November 05 2015

see for VS2015

by the real Tim Partridge | October 23 2015

Works as advertised. Downloaded, installed, restarted Visual Studio. Done

by Toomas Talviste | September 23 2015

by Kevin Landymore | September 15 2015

Doesn't work with a build controller. Useless for me sadly, these things should work "out of the box".

by Richard M Lee | September 06 2015

Invaluable! A feature that should definitely be native to visual studio.

by SabbirSpider | August 14 2015

Great Package.It reduces my lot of manual task for my windows application

by sukhdeep.singh1 | July 31 2015

Great plugin, a life saver :)

by ronnotel | July 18 2015

I've been coding large financial trading frameworks in VS/C# since .NET 1.1 days (12/13 years). From this perspective, I can affirmatively state that Slow Cheetah is by far the most productive package that is not currently integrated into the VS tool. I'm walking through a major rollout now involving five different staging environments and over twenty different server configs. Without Slow Cheetah, the other 35 people in the deployment team waiting on my builds would be left high and dry while I tried to manage the configs by hand. VS management - what the *hell* are you thinking? Integrate!

by MGSman123 | June 30 2015

Excellent extension! Definitely essential to my VS toolbelt going forward. Works like a charm in VS2015 too. Just needed to tweak the vsextension xml inside the package :)

1 - 20 of 146 Items   
Sign in to start a discussion

  • 2 questions
    1 Posts | Last post September 08, 2015
    • Hi,
      Thanks for this cool tool!
      Questions (VS2012 update 4):
      1 - No "Preview Transform" on "Web.Release.config". I do get it when I right-click on the Debug config. Why is that?
      2 - I have a separate config for connection strings. I configured profile configs for each, but it doesn't seem the tool picked it up. Do I need to configure this somewhere?
  • VS2015 Support
    2 Posts | Last post August 25, 2015
    • Excellent project. Is there an e.t.a for VS2015 support?
    • Visual Studio 2015 Support:
  • VS2013 Update 5
    1 Posts | Last post July 30, 2015
    • Hi,
      Does it support VS2013 Update 5 ?
  • VS2015
    1 Posts | Last post July 21, 2015
    • Is there an ETA when this will be updated to support VS 2015?
  • Preserve format of original config file
    1 Posts | Last post June 16, 2015
    • Is there some way to preserve the format of the original config file?
      We've got the VS option "Align attributes each on separate line" for XML files
      But after running a web config transform, the replaced section goes back to a single line 
  • TransformXml skipped due to false condition
    3 Posts | Last post June 04, 2015
    • I have a problem with log4net config files not being updated by SlowCheetah in Visual Studio 2010.  I'm using SlowCheetah  When I look at diagnostic build output, I receive the message:
      Task "SlowCheetah.Xdt.TransformXml" skipped, due to false condition; (Exists('%(RelativeDir)%(Filename).$(Configuration)%(Extension)')
      and '%(Link)'!='' ) was evaluated as (Exists('Log4Net.Prod.config')
      and '' != '').
      I have two questions:
      1)  Where is SlowCheetah getting the "Prod" configuration from?  I'm using the "Release" build profile in Visual Studio 2010.
      2)  In the csproj file for my project, I see no references to a "<Link>" element but the log4net config file is referenced in a "<None>" element.  Clearly Slowcheetah is finding the log4net.config file to attempt the transformation but won't the fact that there is no <Link> element always prevent the transformation from happening?
    • Ok, since posting this, I answered my questions.  The above issue with the "<Link>" element isn't relevant to my problem at all.
      Nevermind.  :)
    • Hi Tom, 
      I am getting this same error. How did you fix it? Can you post your solution in this forum please for everyone's benefit?
  • Why "Debug" and "Release"?
    4 Posts | Last post May 18, 2015
    • I want to create transforms for each of our environments (e.g. "Dev", "QA", "Prod") and name them accordingly.  Having transforms named after the build configuration (e.g. "Debug" or "Release") doesn't work for us.  How can I set that up?
    • You can name your build configurations "Dev, QA, Prod", once you have done that, then transform the app.config file and it will take the name of the build configs.
    • Sorry Michael for the intrusion but I had the same issue.
      I already did what you suggested but still only Debug and Release are getting transformed.  Once I use the environment specific config, the environment specific config files is just being copied instead of merging and transforming it with the main app.config.
    • Apologies for the delay in replying. I'm like you and use 3 different configs (DEV,UAT,PROD) i create these in the build configuration, then right click on the app.config file to create the files etc (I then delete the debug & release versions & build configurations) so the solution only knows about the 3 configs I use, then to build I select the config "dev" and click build solution. This works for me and they seem to get transformed ok - I'm using VS2013.
  • VS 2015 RC
    1 Posts | Last post May 10, 2015
    • Hi!
      Visual Studio 2015 is RC now. Are you planning to support this VS version for this great extension?
  • Visual Studio 2015 CTP
    1 Posts | Last post April 23, 2015
    • Hi,
      is a (beta) version of Slow Cheetah available for VS 2015 CTP already?
      Will there be a version of Slow Cheetah for VS 2015 soon (after its release)?
      Best regards
  • Cannot replace root node
    4 Posts | Last post March 26, 2015
    • Hi,
      I want to add transforms to an EPiServer license file. However, for this to be maintainable I need to replace all content in License.config. When I'm adding xdt:Transform="Replace" to the root node I get the following error:
      "Could not write Destination file: Cannot insert the node in the specified location."
      This applies to any file except Web.config. Any thoughts on this?
    • I am attempting to do the exact same thing with the exact same result.  Any update on this question?
    • Can anyone please tell me solution for this.I really need to get this done
    • Your issue is likely the idea of replacing the root node.  Try to alter any available nesting nodes or attributes.
      If none of that works you may need to resort to additional post-build steps (if you haven't already).
11 - 20 of 258 Items