【问题标题】:.Net Core 1.x projects won't start after upgrading to VS 2017.Net Core 1.x 项目在升级到 VS 2017 后不会启动
【发布时间】:2018-04-16 12:50:06
【问题描述】:
我使用 VS 2017 已经有一段时间了,最近升级到 VS 2017 15.4 只是为了看看 .NET Core 2.0 的样子。但是,不知何故,我在 .NET Core 1.x 中的所有现有项目都无法启动(当我开始调试时,VS 将立即启动并退出)。当我将此项目的目标框架更改为 .NET Core 2.0 时,它们确实可以正常编译和加载。
现在,不确定这是否是一个已知的错误,但必须有办法让任何版本的 VS 向后兼容,并且这个版本的 VS 可以加载和运行旧版本的 .NET Core。我错过了什么吗?
【问题讨论】:
标签:
c#
.net-core
visual-studio-2017
asp.net-core-2.0
【解决方案1】:
这是安装更高版本的 .NET Core SDK 后的预期行为。托管可执行文件dotnet.exe 将始终默认选择最高安装版本。
.NET Core 提供细粒度的控制机制,允许选择应用程序应该使用哪个版本的 .NET Core。控制机制基于 global.json 文件,这些文件用于为放置它们的目录和所有子目录设置 .NET Core 的版本。可以使用较低级别的 global.json 文件覆盖来自较高级别 global.json 文件的设置,并且新设置将应用于放置文件的目录和所有子目录。
global.json 文件内容示例如下:
{
"sdk": {
"version": "1.0.4"
}
}