Upgrading to Visual Studio 2008

Visual Studio 2008 allows you to work on .net 2 projects without conversion to the new .net 3.5 framework, but there are a couple of issues to look out for.

When you open a 2005 solution file in Orcas Beta 2, you will find that it wants to convert the solution and project files.

You can then choose whether to target .net 2 or .net 3.5.

Once converted, the solution file will not work in VS2005. I recommend using two solution files, one for 2005 and one for 2008.

Although the project files also get converted, the converted proj files generally open fine in vs2005 with one exception.

Take a look at the following code from one of my converted Web Application Projects.

  1. <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" Condition="" />

Note the reference to v9.0.

This caused me problems when I committed my code to Subversion, my Continuous Integration Environment attempted to build the project and complained that it could not find the following..

C:Program FilesMSBuildMicrosoftVisualStudiov9.0

The problem is, if you manually modify that back to 8.0, you will find that VS2008 tries to "Convert" the project again.

The easiest (hacky) way round this, is to copy the v8.0 folder

C:Program FilesMSBuildMicrosoftVisualStudiov8.0

to…

C:Program FilesMSBuildMicrosoftVisualStudiov9.0

In testing this is enough to fool msbuild into building the project and so far has not caused me any further problems.