Visual Studio Update 2017 15.3.1 强制 ASP.NET Core SDK 2.0,然后找不到"reference assemblies"



与这个问题有关: Visual Studio 15.3.1 更新后找不到核心 DLL

我不得不执行相同的过程,损坏的VS设置意味着我运行了安装程序并将VS 2017更新到15.3.1。从那时起,如果没有安装 .NET Core SDK 2.0,我的主要项目将无法运行,就像上面引用的问题一样。

我已经安装了SDK 2.0,它解决了错误,项目构建并运行,但随后立即抛出InvalidOperationException: Can not find assembly file Microsoft.CSharp.dll at 'build paths'

如果我将该 DLL 从我的C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.6.1目录(我使用的是面向完整框架 4.6.1 的 .NET Core 应用程序(放入 bin 文件夹中,它会移动到缺少mscorelib.dll,然后

继续。在将整个批次转储到 bin 输出文件夹之前,我假设由于某种原因新设置找不到新的 SDK 文件和/或引用程序集文件夹?

有解决这个问题的方法吗?这也将反映到生产环境中。


GitHub上也有同样的问题:https://github.com/aspnet/Home/issues/2129 链接到 https://github.com/dotnet/sdk/issues/1488

问题是一样的,没有任何东西升级 - 只有 VS 更新到 15.3.1,然后抛出The version of Microsoft.NET.Sdk used by this project is insufficient to support references to libraries targeting .NET Standard 1.5 or higher. Please install version 2.0 or higher of the .NET Core SDK.错误,没有对项目进行其他更改

在花了一天的时间之后,根据此处链接的 GitHub 问题: https://github.com/dotnet/sdk/issues/1488 当前解决方案是在主<PropertyGroup>节点中将以下内容添加到.csproj文件中:

<DependsOnNETStandard>netstandard1.5</DependsOnNETStandard>

这里有一些关于目标的更多信息: https://learn.microsoft.com/en-us/dotnet/standard/net-standard

当您更新到 VS 2017 15.3 及更高版本时,它可能仅适用于针对完整框架(在本例中为 4.6.1(的 .netcore 项目。

如果有更好的修复,我会更新答案以反映它。

最新更新