Visual Studio 2017安装中断Visual Studio 2015 ASP.NET Core项目


94

安装Visual Studio 2017专业版后,我无法再在Visual Studio 2015专业版中构建ASP.NET Core。我从未在VS2017中打开过这个项目

我懂了

尝试运行项目模型服务器进程(1.0.0-preview3-004056)时发生以下错误。

无法启动该过程。找不到与命令dotnet-projectmodel-server匹配的可执行文件

在此处输入图片说明

然后,我在Visual Studio 2015中创建了一个全新的ASP.NET Core项目,加载项目时得到的消息完全相同。

另外,当我要构建项目时,我得到

MSB1009:项目文件不存在。

在此处输入图片说明

ASP.NET 5项目不会发生相同的问题,因此仅限于ASP.NET Core


Visual Studio 2017 3月7日更新

如果像下面的答案中那样添加了global.json,则global.jsonC:\Program Files\dotnet\sdk\文件夹中存在的和中使用的任何.net框架版本都会收到错误消息

错误MSB4019找不到导入的项目“ C:\ Program Files \ dotnet \ sdk \ XXX \ Microsoft \ VisualStudio \ v14.0 \ DotNet \ Microsoft.DotNet.Props”。确认声明中的路径正确,并且文件在磁盘上。

另外,当关闭Visual Studio并再次将其重新打开时,也会收到原始错误消息


2
Visual Studio 2017更新了.NET Core SDK,带来了许多更改,例如从project.json移开并在Visual Studio中工作时对性能进行了许多优化。这是.NET核心本身的重大变化。
jessehouwing

我还在装有VS 2015 Update 3的计算机上安装了VS 2017 RC,并尝试在VS 2015中打开现有的ASP.NET Core 1.0应用时遇到了完全相同的错误。在安装VS 2017 RC之前,该项目在VS 2015中很好地打开了而且我从未尝试使用VS 2017 RC打开它。我卸载了VS 2017 RC,并且打开的ASP.NET Core 1.0应用程序现在可以正常运行,并且现在可以使用VS 2015进行构建。因此,显然,与Microsoft所说的相反,您不能在装有VS 2015的计算机上安装VS 2017 RC它。至少如果你想在2015年VS VS与2015年创建的应用程序1.0,打开ASP.NET核心
斯蒂芬·彼得森

1
默认的VS2017 ASP.NET Core RC模板也破坏了发布,因此我建议您不要使用RTM
dfmetro


2
我发现缺少Microsoft.DotNet.Props的3月7日更新的解决方法。转到您的C:\Program Files\dotnet\sdk文件夹,找到位于1.0.0之前的文件夹(在我的情况下1.0.0-preview2-1-003177)。将sdk / version替换为global.json中的该值。然后dotnet restore
AngryHacker

Answers:


77

@ClaudioNunes和@MegaTron有正确的答案。阅读该答案后,我意识到我的.NET Core解决方案没有global.json文件。我添加了一个新的解决方案文件夹,并添加了global.json文件。由于我的项目都没有嵌套在子文件夹中,因此我只需要从项目数组中删除“ src”和“ test”:

{
  "projects": [],
  "sdk": {
    "version": "1.0.0-preview2-003131"
  }
}

现在,已在安装了VS 2017 RC的VS 2015中正确打开该项目。


为我工作谢谢。@Luiz会在他第一次就得到答案,但他的答案没有详述
dfmetro

谢谢。升级到VS 2017 RC后,我感到非常困惑。但是现在可以了。
thangchung

2
另外,我必须dotnet restore在每个项目上运行,但是之后一切都按预期进行。
cel夏普

2
您说的这个新解决方案文件夹是什么?
Mathieu K.

1
它不起作用,"version": "1.0.0"但是当我尝试"version": "1.0.0-preview2-003131"时起作用。...感谢您挽救生命...
Nisar


5

转到程序和资源,使用“核心”进行筛选并找到Preview 3安装(“ Microsoft .NET Core 1.0.1-SDK Preview 3(x64)。”)并将其删除。

注意:dotnet --version在删除此SDK之前和之后运行。就我而言,结果在1.0.0-preview3-004056(之前)和1.0.0-preview2-1-003177(之后)。

我还看不到vs2017的副作用。


1
这是修复它的一种方法,但是,您可以将global.json文件添加到您的解决方案(解决方案文件,不在项目级别添加),以指定要使用的核心版本{ "projects" : [], "sdk":{ "version":"1.0.0-preview2-003121"}}
bougiefever

2

看一下此链接:https : //github.com/aspnet/Tooling/blob/master/known-issues-vs2017.md#known-issues-for-aspnet-core-support-in-visual-studio-2017

如果您将Visual Studio 2015的工具更新为最新版本,它应该可以解决此问题。请注意,这不是Visual Studio 2015更新,而是ASP.NET Core和工具。


我不确定要安装最新的ASP.NET Core 1.1工具与在VS 2015中打开ASP.NET Core 1.0应用程序并且不能与VS 2017 RC一起安装会做什么。我可以看到您是否要在VS 2015中将现有的ASP.NET Core 1.0应用程序升级到1.1,但是安装VS 2017 RC应该与VS 2015的工作方式无关,尤其是与在VS 2015中创建的.NET Core项目无关
斯蒂芬·彼得森(Stephen Peterson)

0

从Visual Studio 2017 RC到Visual Studio 2017 RTM的项目升级已得到改进,并且现在可以使用。

我最终在Visual Studio 2017中打开了Visual Studio 2015 ASP.NET Core解决方案,该解决方案升级了该解决方案中的每个项目。然后,我更新了nuget软件包,并且该解决方案可以正常工作而没有任何副作用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.