Saltear al contenido principal
Upgrading To Visual Studio 2017

Upgrading to Visual Studio 2017

  • Blog

One of the greatest IDE (Integrated Development Environment) that exists nowadays is Microsoft Visual Studio. It was introduced to the public in 1997 and 20 years later has become a big set of software and tools and add-ons and plugins and… It helps software engineers, developers and testers to build excellent solutions.

The last version is Visual Studio 2017 (v15.6 March 5, 2018). It comes in three “flavours”: Community, Professional and Enterprise.

When we think about updating this kind of tools, one big caveat appears: Will my current solution run smoothly with the new version? Moreover, what about my DevOps ecosystem? (Automatic builds, Test automation, Deployment…) Many things must be kept in mind (well, maybe it is better to keep them noted and documented 😉). Don’t worry I have already done these changes and most of the times everything works ok. However small problems arise. If this is your case, and you are thinking about starting this change read below and get some time saver advice.

Once you update to VS2017 a Solution, probably some libraries can be updated also (.Net EF …). It is easily performed with NuGet but think carefully about it. To make small changes is better than big releases and always check that you can go back and, of course, test, test, test…

Solutions and projects: VS2017 can read and open the projects and solutions created with the previous release (VS2015). If you are upgrading from an earlier version, VS2017 itself modifies the files. When these changes are finished, you can work normally with the new visual studio.

SLN files

Once the solution is modified for Visual Studio 2017, it can also be opened with Visual Studio 2015 and this can be annoying if you have both versions in the same box. The solution is easy, open the SLN file and find “MinimumVisualStudioVersion” if you inform this tag with 15.0.0.0 (Visual Studio 2017 is coded 15 internally) you will not be able to open it with VS2015.

Automatic testing, aka NUnit, NSubstitute… keep in mind that if you upgrade your desktop IDE it is easy to update with NuGet these libraries, but no one will automatically update the automation solution…

Another curious side effect: if you are using NUnit (Well done! You are testing automatically your solution or part of it 😉) and have some automation (Jenkins for example). Then:

someVariable = someOtherVar ?? throw new Error_A_Null_Value_Has_Arrived_Here

probably will not work on the automation side but it’s ok on your IDE. Change this line for an if…then…else classic sentence and it will work.

I will be very glad to know if this text has helped you. Maybe you have some comments or different findings on this topic, so what about to leave a message?

Written by Antoni Tovar

Esta entrada tiene 2 comentarios
  1. Hi Antoni,
    thanks for your article and your time.

    I work with Visual Studio 2017 in C/C++ and python, i think is great tool also if i was in love for Xcode.

    From point of view C/C++ is very great do the right job, i like the shortcats for productivity, like:
    “ctor + tab” for create a constructor of class,
    “try + tab” for throw catch construction,
    “for + tab” for create a generic for loop.
    Another positive tip is the switch between projects property in one click, is usefull for copy property from old project to new project and save some time of developing.
    Also the integration with intel’s tools like vTune Amplifier or Inspector are very usefull, they do the right job for understand the bottelneck of our code in local machine or remote machine at level of thread or process.

    From python side was very hard enhance the productivity, for the indentation issue and automatic completion.
    What i can share on this is that more suggestion on the web is to set the indentation based on tab instead of space (Tool->Option->Text Editor->Python->Tabs) is more fast but not work fine. In my opinion is better set the indentation based on space with smart mode checked for avoid brain teasers and do the job.

    I hope it can be a good contribution to your article.

    Greetings,
    Carmine Spizuoco

  2. Thank you very much for your comments Carmine.
    Good point the observation about the productivity shortcuts and the based on spaces indentation with Python.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Volver arriba