4
votes

I'm about to upgrade to Visual Studio 2010, and I'm learning that there are now a few options for deploying web application projects. I've been using Web Deployment Projects in 2008, and my initial thought was to do the same in 2010.

Is there any advantage to using Publish or the Web Deployment Tool over Web Deployment Projects?

I need to automate the process so that the build and the deployment can be run from TeamCity. I'd prefer a method that would allow me to use the Visual Studio (sln) Runner but a custom MSBuild script would be OK too. See Web Application Deployment Workflow with SVN and TeamCity for more information on my current build/deployment workflow.

1
I thoght they both serve different purposes. Web Deployment Projects is for generating the assemblies and configure what should be compiled and what not. Publish is for copying things over to the server. So I tried to find a way to do one after the other, but didn't succeed yet.. :-(Mathias F

1 Answers

1
votes

They both accomplish the same end goal, but they work very differently. In the end I used the new Web Deployment Tool. I chose it for the following reasons:

  1. I can build my solution without installing any add-ins and with VS 2010 Express. MSDeploy is executed on my build server from an MSBuild script
  2. MSDeploy seems to be the preferred method.
  3. Web.config transformations are more flexible than WDP web.config section replacements. Only certain config sections could be replaced with WDP, but transformations are simply XML transformations that can apply to anything.