I have had a project in VS 2015 Update 3 with a lot of code logic behind. I upgraded it to VS 2017 RC successfully. The code implementation went on and on until getting to the point where VS 2017 RC exhibited a lot of issues and instabilities e.g. .Net Core DLL template removed! by installer or Resource file could not be compiled and so forth! I'd like to revert the solution back to VS 2015 to keep working flawlessly but it's impossible easily due to a lot of code implemented in VS 2017 excluding new Roslyn features. Any suggestions how to perform the downgrade?
-
5Just revert the one specific commit that was done to upgrade from VS 2015 to VS 2017 RC. (You do use version control, right? If not, start using it, so you don't face the same problem again.) – Heinzi Dec 08 '16 at 14:35
-
this is a really really ugly solution and only use this if someone can't get you an answer. you might just need to copy and paste everything into VS2015 – peterpep Dec 08 '16 at 14:40
-
@Heinzi It's impossible. I have a git repo but the code itself evolved since then! As peterpep mentioned it has to be a manual process. – Arash Dec 08 '16 at 14:51
-
@Arash, can you better explain the problem? It sounds like everything was working fine and then a bunch of components disappeared. Is that right? If that's the case, did you happen to take some VS updates between when it worked and when it stopped working? – Michael Braude Dec 08 '16 at 16:23
-
I did not find any solution other than changing my projects jsproj.user file and JavascriptAppProject file according to my older commits :) which I have used vs2015 .And @Heinzi is so right :) . – katmanco Jul 04 '17 at 16:30
-
@Arash: It should still be possible: Git supports [reverting a single commit from the past](https://stackoverflow.com/a/2318847/87698) but keeping all changes that were made *after* the commit. – Heinzi Jul 04 '17 at 18:47
3 Answers
You will also need to update your *.vcxproj files, to change the toolset referenced there to the one used by the earlier compiler.
What I found useful, is to create a small scratch project (just simple console app) in each version of visual studio, then use beyond compare or similar to contrast the .sln and .vcxproj files from each vs version. This will show you the toolset changes and maybe a few others that you need. For example going from vs 2017 to vs 2019 the toolset changes from 141 to 142.
So the lines
<PlatformToolset>v141</PlatformToolset>
are for vs2017
and
<PlatformToolset>v142</PlatformToolset>
is for vs2019

- 1,385
- 16
- 20
It's indeed a manual process and no there are no tools that can automate that.

- 3,628
- 5
- 46
- 70
I had the same problem and i fixed it using this solution: 1) create a solution of whichever project you want (winforms, etc) 2) browse to your project folder and find your .sln file. 3) open it using notepad. 4) copy the first 4 lines as shown here.
5) find your .sln file for the project you wish to downgrade. for example : foo.sln (its found where your project is). 6) open it with notepad and paste the lines instead of the first 4 lines 7) save and open the sln. it should open it under visual studio 2015
i hope this works for you

- 3
- 5