Visual Studio 2017无法识别.sfproj类型的项目

5

我尝试使用 Visual Studio 2017 第一次打开从源代码下载的一个解决方案,但是出现了错误:

此版本的 Visual Studio 无法打开以下项目。可能未安装项目类型或...

我发现被 VS 抱怨的项目类型是.sfproj,通过查询得知它代表着 **Azure Service Fabric**。

根据文档说明,我已经安装了最新版本的 Azure Service Fabric SDK,但是仍然出现错误。
同时,当我点击菜单 -> 文件 -> 新建 -> 项目时,并没有看到任何 Azure Fabric Service 模板。

如何让 Visual Studio 认识 Azure Service Fabric?除了安装 SDK,我是否还需要进行其他配置?

感谢您的帮助!


3
回到安装程序,确保选中了 Azure 开发工作负载。 - Hans Passant
我已经卸载了它。现在我正在尝试重新安装,但我甚至看不到在哪里应该确保选择Azure开发工作负载。 - Richard77
1
卸载它并不是必要的。我们看不到你所看到的。安装程序中可用的工作负载在此处列出:(https://www.visualstudio.com/vs/support/selecting-workloads-visual-studio-2017/)。您需要选择“Azure开发”这个工作负载。 - Hans Passant
1
抱歉,我以为你在说的是服务布局安装程序。我重新运行了Visual Studio安装程序,勾选了Azure开发工具,现在它正常工作了。非常感谢你。 - Richard77
只是为了补充这个答案的细节,因为它对我也起作用了。通过右键单击Windows图标进入“应用和功能”。然后选择VisualStudio 2017并选择“修改”,然后将Azure开发作为VisualStudio 2017支持的附加工作负载/开发区域添加进去。 - DragonSpit
1个回答

17
这是因为您没有安装Visual Studio的Service Fabric工具。要设置运行Service Fabric项目的开发环境,您需要三个东西:
1. Service Fabric SDK 2. Service Fabric Runtime(随SDK一起安装) 3. Visual Studio的Service Fabric工具
根据您的Visual Studio版本,您将以不同的方式安装它们:
对于Visual Studio 2015,您可以使用Web Platform Installer安装所有3个项目。只需打开WPI并搜索Azure Service Fabric SDK和Tools v--(VS2015),完成设置后重新启动计算机即可。
对于Visual Studio 2017及更高版本,此过程已更改为更“简单”,但有点棘手,在VS2017上,工具与VS Installer一起安装:
1. 打开Visual Studio 2. 工具(顶部菜单栏) 3. 获取工具和功能(安装程序将打开以修改VS功能) 4. Azure Development 5. 选择“Service Fabric” 6. 确认更改和设置。
完成后,您必须进入Web Platform Installer并设置SDK,其中不包含(VS2015)的那个。设置完成后,重新启动计算机即可。
在两种情况下,都会设置最新版本的SF,如果您需要旧版本,则会遇到一些挑战。
VS2017的方法存在问题,因为你无法选择所需版本,因此很可能会得到最新版本,强制你更新项目文件。
对于VS2015,你可以选择版本,首先需要确定项目需要的版本,打开原始.sfproj文件并查找元素'ProjectVersion',大多数情况下需要升级项目版本(在安装新版本工具时自动完成)或降低sfproj以使用旧工具打开。
要下载工具安装程序,请转到Service Fabricblog,查找所需版本的发行说明,然后查找下载“Visual Studio 2015 Tool for Service Fabric”的链接。这不适用于VS2017。
有关更多信息,请参阅文档的详细信息: https://learn.microsoft.com/en-us/azure/service-fabric/service-fabric-get-started

需要注意的是,仅仅安装SDK是不够的。SDK并不特定于Visual Studio - 它只是一个通用组件。只有安装Visual Studio的Service Fabric工具才能让您打开项目。 - Christian Findlay

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接