Is Visual Studio 2017 RC backwards compatible with Visual Studio 2013 solutions? - visual-studio-2013

We have several VS2013 solutions all targeting .NET 3.5, with several WinForms projects, an ASP.NET Web Application, and a Windows Service. Mostly VB.NET with some C#.
These projects all worked fine in VS2013 and VS2015 - we could open, work on, save, compile and run them, in both versions of VS.
We didn't move to VS2015 in the end because it was so buggy - VB.NET Edit & Continue was hopelessly broken, and Intellisense didn't work so well either.
So now we're contemplating skipping 2015 and moving straight from 2013 to 2017, but again we're nervous, wanting to run them in parallel for a while until we feel 2017 is ok. It's a two person team, and one would be sticking with VS2013 while the other one develops with VS2017.
So: can you use both VS2013 and VS2017 to work on the same codebase in the same way that you could with VS2013 and VS2015?
We aren't yet using features that come with later versions but we do want to move to the newer IDE as a precursor to moving to more recent framework versions and language features.

The compatibility between different versions of VS should remain the same - that is, VS2017 and VS2013 should work together as well as VS2015 does with VS2013. The usual caveats apply: any globally installed packages/frameworks from VS2017 might have unintended impact on VS2013 (for example, if VS2017 installs a newer version of the .NET Framework that has an unintentional behavior change).
In general, VS2017 ought to be very compatible with other versions of VS. Most of the install payload is now local to that VS installation with lessened impact to the system (no GAC'ed components, no registry keys, etc), so the impact to your box should be less than VS2015.
Obviously, if you add functionality to your solution that's from VS2017 and isn't back-compatible to VS2013, an upgrade will be forced. But that's also no different than VS2015 was.

Related

When opening a VS2013 solution in VS2015, will I be prompted/required to convert to the newer version?

We're investigating upgrading from VS2013 to VS2015 for C# and C++ solutions. Will opening a VS2013 solution in VS2015 require/suggest converting the project and/or solution files to the newer version, or will they just load with no mention that they are from an earlier version?
No. Starting at Visual Studio 2010 SP1, no solution conversion is required to open an old solution with a newer version of the IDE (and the other way around), and if all your projects are C# and C++, you'll be able to work with VS2015 just fine. Note however that additional data may be added to the solution file, but this will not break backwards compatibility (your soultion will still open in VS2013).
More information: Porting, Migrating, and Upgrading Visual Studio Projects

New Laptop - Any reason to install Visual Studio 2012 AND 2013?

I've just been given a new work laptop and have an MSDN subscription. My old laptop had VS 2008, 2010 and 2012. I'd rather not install all of these again if I can avoid it. My main question here is whether there any reason to install VS 2012 if I have access to VS 2013? I believe Projects & Solutions are compatible, what other reasons might there be for installing VS 2012 (and for that matter VS 2010) again? If I have an MVC 3 app created with VS2010, will it be possible to open and work with that in VS2013 without having to "upgrade" the project type?
It really depends on what kind of projects you are working on. Each new releases of VS in fact remove certain features.
http://msdn.microsoft.com/en-us/library/vstudio/hh266747.aspx
ASP.NET MVC 3 is not supported by VS2013.
Lex' answer is pretty good. I'd also like to add that if you are using C++/CLI, upgrading to Visual Studio 2013 will force you to target .NET 4.5, which might not at all be desirable if your users only have .NET 4.0 etc.
You can still target the older frameworks, by letting VS2013 use the older "Platform Toolset" from e.g. VS2010 or VS2012, but this will force you to have either one of these installed. I am using this exact scenario (VS2010 + VS2013) and it works quite well. (I have only VS2010 and 2013, not 2012 in that specific virtual machine.)
Update: Here is a MSDN page which backs up my statement about C++/CLI, just for the reference.

Which version of Visual Studio should I install?

I am going to install Visual Studio. I want to know if the latest version of Visual Studio 2010 is backward compatible with previous versions like VS 2005 and 2008. Or is the code functionality and deploy-ability more dependent on the .NET framework version.
I am trying to use a code which will be built into dll. I am not sure in which version of VS the code was written(most probably VS 2005).
Thanks...
I would suggest to go with the latest Version.
VS 2010 can target multiple frameworks.
http://msdn.microsoft.com/en-us/library/bb398197.aspx
So the dll should know with which framework it was compiled...
I have never found any issues with Visual Studio 2010 and previous versions' code. It also does feature significantly improved Intellisense and [IMHO] faster building.
they are all backward compatible
2005 and above allow you to target the framework you want when creating
the project
if the project is older
than the VS, it will prompt you with
a migration wizard upon opening
it(this is a one time only step.
Couple of things to note that i've found with 2010 which have caused us a couple of issues:
1) NHibernate (Castle Proxy) doesn't work with .net framework 4 (Currently)
2) Test Projects are always created aimed at .net framework 4, and you cannot target a lower version of the framework.
Otherwise not many problems, its also nice that the database addition of Visual Studio 2010 has intellisense on your tables/views, as well as many other changes
Always go with the latest, now 2010

If I have Both Visual Studio 2008 and 2010, do have I have to keep both

I recently downloaded VS 2010 trial, the new version is more easy to use.
I have VS 2008 installed, If i decide to use VS 2010 in the future, do I still have to keep VS 2008? Is there any compatibility issue with it?
You would need to keep VS2008 installed if you target Windows CE (via Compact Framework, native smart device projects, etc.)
http://msdn.microsoft.com/en-us/library/sa69he4t.aspx
Also if you want to write native applications that run on versions of Windows before XP SP3 and Server 2003 SP2, this is no longer possible with VC++ 2010. The same applies to managed code written for the .NET Framework 4.0, but you can still use Framework 3.5 with VS2010 for projects with managed code only.
And Intellisense for C++/CLI code is gone (MS promises to remedy that in the future, whether a service pack or the next version I cannot say).
If you open a VS 2008 solution or a project in VS 2010 it will be converted to VS 2010 and you will not be able to open it in VS 2008.
If that is not a problem then you don´t have to keep VS 2008, unless you are using a addin or some other third party application with VS 2008 that is not compatible with VS 2010.
Edit:
Look at Ben Voigt´s answer for information for which version have support for different platforms.
VS2010 allows you to specify the target framework that you'd like to develop on. There should be no reason to keep VS2008 installed unless you've become accustom to some handy plugins :)

Is it wise to work with Visual Studio 2010 Release Candidate?

I downloaded VS 2010 RC and want to try it out.
Can I use it to create commercial software?
When will the final version be released?
The final version of Visual Studio 2010 will probably be released on April 12th, 2010.
However, you can already use the release candidates of Visual Studio 2010 and .NET Framework 4 which both are go live releases (since Beta 2). This means that there will be no breaking changes in the final release versus RC that will make your software unusable, and that they are licensed for developing and deploying production applications.
As with all Visual Studio versions, it is possible to target another earlier .NET framework version, that is you can still develop for .NET 2.0 as an example.
It is also possible to – and in fact a good idea – install Visual Studio 2010 Release Candidate side-by-side with other versions of Visual Studio.
All in all I see no risk in trying out Visual Studio 2010 Release Candidate. It is obvious that it is not the most stable piece of software at this moment, but certainly usable.
You can still target previous Framework versions so if you want to develop applications there is no reason why it should be any different. The issue would come if you tried to develop .Net 4 solutions as there will not be many people using that yet, especially commercially
Believe the final version will be released end of March. Until then you can't distribute it to customers as the .NET 4.0 installer won't be made available to them.
Is it wise to do so? Well it probably depends on your product. If it's mission critical I'd wait till it's been used for a bit and any bugs are ironed out of .NET 4.0 via service packs. For normal applications I don't really see why not, it's had some pretty rigorous testing internally and by dev's I'm sure.
As long as you're not targeting the 4.0 runtime, you can use it to develop and deploy applications today.
Visual Studio 2010 can target previous versions of the .NET framework, so that's not a problem. However, projects or solutions that were created or modified with Visual Studio 2010 cannot be opened by Visual Studio 2008 without manually editing the project files. So I would definitely not recommend upgrading to VS2010 if you work on a team and your teammates still use VS2008.
I tried vs 2010 beta 2 with a MFC application. The intelisense is improved but the compilers has some problems - sometimes it just freezes and I have to restart VS. Maybe this was fixed in the RC version that was released a few days ago.
Take in consideration that you might have to pay a price (instability) for new technologies.
Work on whatever you want, but I think you should study your customers, as to what OS do they use, are they looking to upgrade, the effects of net 4.0 on your application, etc...
Whenever these things come out, there should always be a phasing plan in place. Although, it's more work, I personally think that it's a great approach
VS2010 is not yet released for commercial use. So if you are using it for commercial use, it is not appropriate. Though it was planned for March 2010 release, you can expect it with some possible delay.

Resources