45

I'm thinking about installing VS 2017 and using it for work. The free download is here.

So is Visual Studio 2017 RC backwards compatible with Visual Studio 2015 solutions?

The release notes mention it here. Just wondering if someone did this and if they had any issues.

EDIT (UPDATE)

I have been working with 2017RC now since 2/1/2017 and I verified it does not change the proj or sln files at all, not even when you add / remove files to the proj / sln (except to reflect the file changes of course).

IT'S SAFE TO USE IN A 2012/2013/2015 SHOP!!!

toddmo
  • 20,682
  • 14
  • 97
  • 107
  • not for .NET Core – Alexan Jan 30 '17 at 20:20
  • @Alex, good point. I'm using 4.5.2 at the moment. – toddmo Jan 30 '17 at 20:21
  • just install VS2017, not removing VS2015 and check yourself – Alexan Jan 30 '17 at 23:43
  • what type of project you use? I can try right now. – Alexan Jan 31 '17 at 01:22
  • okay, created MVC application (4.5.2) in VS2017 and then opened it without problem in VS2015. So I think VS2017 is backwards compatible for most projects (except Core) and not sure about UWP. – Alexan Jan 31 '17 at 01:36
  • Thanks. You tested the forwards compatibility one way trip. Good to know as well, but backwards compatibility would be if 2017 can open a 2015 proj or sln. Then a round trip forwards compatibility would be then if 2015 can still open that file after 2017 opened it. And the minutia would be the changes that 2017 makes upon opening proj and sln files. I was hesitating trying this on my solution which I can't allow anything bad to happen to it, partly b/c I have pending source control changes right now. – toddmo Jan 31 '17 at 20:26
  • 1
    okay, created project in VS2015, then opened in VS2017, then again in VS2015. All is working. – Alexan Feb 01 '17 at 01:45

2 Answers2

30

It depends on the type of project.

For most (standard) types, for example web projects (Full .NET Framework), Windows projects VS 2017 is forward and backward compatible with VS 2015, solutions and projects formats are the same.

But not compatible for .NET Core projects, because project.json was changed back to .csproj.

Alexan
  • 8,165
  • 14
  • 74
  • 101
  • unfortunately I have .NET core project in VS2017, is there anyway to convert csproj to project.json, so that I can work in both IDE simultaneously , and just don't stuck with this silly thing – A.T. Feb 21 '17 at 04:08
  • 1
    @A.T., you can migrate project.json to csproj, but don't think you can migrate it back. – Alexan Feb 21 '17 at 04:13
  • 3
    You also have to remember that not all features available in VS 2017 are going to work in VS 2015. For example, if you use any of the new C# 7 constructs in C# code these can't compile in VS 2015. To be clear, the code (intermediate language) created will work fine everywhere, but if you have colleagues still using VS 2015 they won't be able to run the project if you use the new stuff. You might not notice you've done this until you break them (or the build). Of course you can just ensure you don't use anything new, but the two versions aren't 100% compatible both ways. – Rich N Apr 09 '17 at 08:51
4

If you create a .csproj in VS 2017 or optimize it as suggested in Old csproj to new csproj: Visual Studio 2017 upgrade guide , it will not be compatible with VS2015 any more.

Michael Freidgeim
  • 26,542
  • 16
  • 152
  • 170
  • 1
    The work around would be not to create it in 2017, but create it in 2015 and then open it in 2017 to continue working on it. The question's scenario is a mixed shop, which hopefully is a temporary situation. Thanks for the optimize tip after everyone has migrated. – toddmo Jun 02 '17 at 13:38