Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Visual studio 2017 is not recognizing project of type .sfproj

I'm trying to open a solution that I downloaded from a source code for the first time using Visual Studio 2017. I got an error:

This version of visual studio is unable to open the following projects. The project types may not be installed or the … blah blah.

I figured out that the type of project VS is complaining about is of type .sfproj, which I found out is means **Azure Service Fabric **.

I've installed the latest version of Azure Service Fabric SDK, as the documentation says, but I'm still getting the error.
Also when I go to Menu -> file -> New -> Projec, I don't see any Azure Fabric Service as template.

How to make visual studio recognize the type Azure Service Fabric? Is there more I need to do besides merely installing the SDK?

Thanks for helping

like image 607
Richard77 Avatar asked Dec 08 '22 14:12

Richard77


1 Answers

This happens because you haven't installed the Service Fabric Tools for Visual Studio.

To setup a development environment to run Service Fabric projects you required 3 things:

  1. Service Fabric SDK
  2. Service Fabric Runtime (installed with the SDK)
  3. Service Fabric Tools for Visual Studio

Depending on the version of your visual studio you will install them in a different way:

For Visual Studio 2015 you can install all 3 items using the Web Platform Installer. Just open the WPI and search for Azure Service Fabric SDK and Tools v-- (VS2015), once the setup is completed just restart the computer and it's all done.

For Visual Studio 2017 and later, this is process has changed to be 'easier' but is a bit tricky, on VS2017 the Tools are installed with the VS Installer:

  • Open Visual Studio
  • Tools (On top bar menu)
  • Get Tools and Features (the installer will open to modify VS features)
  • Azure Development
  • select 'Service Fabric'
  • Confirm the changes and setup.

Once completed, you have to go on Web Platform Installer and Setup the SDK, the one that does not contain (VS2015) at the end. After setup is completed, restart the computer and it is done.

In both cases, it will setup the latest version of SF, if you require an older version, you will face some challenges.

The problem with VS2017 approach is that you can't select the version you want, so is very likely you will end-up with the most recent version, forcing you to update the project file.

For VS2015 you can chose the version, first you need to discover the version your project need, for this, open the raw .sfproj file and find the element 'ProjectVersion', most of the times you need to upgrade the project version(done automaticaly when you install a newer version of the tools) or down grade the sfproj to open with older tools.

To download the tools installer, go to the Service Fabric blog and find the release notes for the version you want and then look for the links to download 'Visual Studio 2015 Tool for Service Fabric'. This does not work with VS2017.

For more information, please see more details on the documentation: https://learn.microsoft.com/en-us/azure/service-fabric/service-fabric-get-started

like image 91
Diego Mendes Avatar answered Feb 06 '23 07:02

Diego Mendes