Wednesday, January 23, 2013

CopyAllFilesToSingleFolderForPackageDependsOn changed to CopyAllFilesToSingleFolderForMsdeployDependsOn

Yesterday I upgraded a web solution from Visual Studio 2010 to Visual Studio 2012. The upgrade went fine. I started coding and did my thing. When I was done and was going to create my deployment package, that's when I noticed, that option is no longer available in Visual Studio 2012. A quick google brought me to this article where the author writes

To create a package for your Web Application Project in VS 2012 (or in VS 2010 if you have the Azure SDK 1.7+) you can follow the steps below.

  1. Right click on your project and select Publish
  2. Create a new profile for your Web Deploy package
  3. Specify the path where the package should go (must end with a .zip)
  4. Click Publish


After creating my template and created the deployment package I noticed that my custom build actions and transforms didn't get executed.
If you have implemented custom build actions like including extra files from external libraries you have probably used the CopyAllFilesToSingleFolderForPackageDependsOn property group. It's here Microsoft has sneaked in a slight change. That same property group has been renamed to  CopyAllFilesToSingleFolderForMsdeployDependsOn. So there you have it, change the name and voila!
And don't forget to restart Visual Studio after yo done the change so it gets read into the solution.