views:

279

answers:

4

I am currently working on an asp.net application in Visual Studio 2005. I would like to upgrade to 2008 to take advantage of some of the new features, but my remote team won't be able to upgrade to it for a while.

Is it possible for only a few people on my team to upgrade to Visual Studio 2008, while the rest of the team continues to use 2005?

At this point, I don't plan on using any of the 3.0+ foundation stuff yet, so that isn't a concern.

+1  A: 

Yes, the project files between 2005 and 2008 are compatible. The solutions are not, but those are easy to remake or copy. There is one gotcha with the project files, if you're using Web Applications projects. The two versions reference different MSBuild target files. Steven Harman has a blog with a fix to add to the project file.

So long as you aren't using anything new from the 3.5 compiler, you should be good. Note that even if you are targeting the 2.0 Framework, the compiler will still accept 3.5 syntax (var, object initializers, etc.) so you'll still need to be aware of those.

bdukes
+1  A: 

For C#: Projects initialy created in Visual Studio 2008 can't be opened in 2005 until you change a few lines at the bottom of the project file.

Visual C++ projects are incompatible, but it is pretty easy to merge changes in one file version into the other

Bert Huijben
A: 

Make copies of your project files and rename the physical copies to "Name2005.proj". Then upgrade the solution you are working on which will upgrade the project and solution files. Finally go back in VS2005 and create a new 2005 solution and stitch up the 2005 projects into it.

This gives you two parrallel sets of project files that you can use for the code in each visual studio revision. Make sure you keep the VS2008 target .net version at .net2.0 and you can't share MS-Test files. You will also have to manually keep the project files in synch.

It's a bit of a pain but it works.

Dan Blair
A: 

If you're using source control, you can always branch to "2008", upgrade the project, and then manually merge branches when appropriate. You'll just have to be careful to target your solution to 2.0 and only merge code files.

Will