BT
x Your opinion matters! Please fill in the InfoQ Survey about your reading habits!

Round-Tripping: Using Visual Studio 2010 and 2012 on the Same Project

by Jenni Konrad on Jun 09, 2012 |

In the past, when developers migrated a project to a new version of Visual Studio, it became unusable in any earlier version. Visual Studio 2012 RC introduces a feature called "project round-tripping", which has begun to make it possible for teams to work on a project in either Visual Studio 2010 or 2012.

Service Pack 1 for Visual Studio 2010 included the framework for project round-tripping. According to the Visual Studio Blog:

In Visual Studio 2010, we enabled full multi-targeting which severed the one-to-one tie between Visual Studio and the .NET runtime. This allowed projects created in Visual Studio 2010 to target older .NET Frameworks, and took us halfway towards enabling round-tripping of projects between Visual Studio versions. In Visual Studio 11, we took the next natural step of correctly handling projects when operating in different environments.

The most important considerations prior to using the round-tripping functionality are that projects are only backwards-compatible with Visual Studio 2010 SP1, and that the application must target .NET Framework 2-4. Compatibility also varies by project type, and some projects are excluded completely. (Microsoft has provided an extensive list with compatibility details.)

Project Behavior
Microsoft states that the majority of projects will behave the same in Visual Studio 2010 SP1 and 2012, and round-trip with no issues. Those that have a hardcoded version number in the build path will be automatically updated to use a variable for this value instead, and that will be the only modification needed. Projects that should round-trip seamlessly include some of the following types: Windows Forms, Sharepoint, WCF, WPF, and most SQL Server projects.

Other projects can be upgraded automatically for round-tripping. Visual Studio 2012 will present a 'Review Project and Solution Changes' dialog when the project is opened, and display the impacted items. The user can review the proposed changes before they occur, and a backup is created as part of the process. Once Visual Studio 2012 performs the modifications, the project can be used in both versions 2012 and 2010 SP1. Silverlight 4 or 5, Blend, and Visual Studio 2010 web projects fall into this category.

Certain types of projects will behave as in previous Visual Studio upgrades: once they’re converted, they cannot be used in any other version of Visual Studio. These types include F#, LightSwitch, and SQL Server LocalDB.

Exclusions
Windows Phone, Windows Mobile, Cloud tools for Windows Azure, BizTalk 2010 R2, and Visual Studio Installer (.msi) projects cannot be used in Visual Studio 2012 RC. Microsoft has not yet supplied details about whether round-tripping will be added for these types of projects in the final release. For installer projects, they are encouraging developers to use InstallShield Limited Edition for Visual Studio instead.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Azure compatability by Anish Karunakaran

Hi,
Am planning to develop azure web service.My colleagues VS is 12 and mine is 10sp1. will there be any compatible issues.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

1 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT