Visual Studio 2017安装打破了Visual Studio 2015 ASP.NET核心项目

dfm*_*tro 94 .net-core asp.net-core visual-studio-2017

安装Visual Studio 2017 Professional后,我无法再在Visual Studio 2015 Professional中构建我的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并再次重新打开它时,我收到原始错误消息

小智 77

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

{
  "projects": [],
  "sdk": {
    "version": "1.0.0-preview2-003131"
  }
}
Run Code Online (Sandbox Code Playgroud)

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

  • 另外,我必须在每个项目上运行`dotnet restore`,但之后一切都按预期工作. (2认同)
  • 你说的这个新的解决方案文件夹是什么? (2认同)

小智 27

可能的解决方法是将global.json添加到解决方案并指定要用作的sdk版本

{
  "projects": [ "src", "test" ],
  "sdk": {
    "version": "1.0.0-preview2-003131"
  }
}
Run Code Online (Sandbox Code Playgroud)


Lui*_*ria 5

转到程序和资源,使用"Core"过滤并找到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的副作用.


小智 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 和工具。