无法为目标框架 '.NETFramework,Version=v4.6.1' 解析 mscorlib

Could not resolve mscorlib for target framework '.NETFramework,Version=v4.6.1'

当我尝试在 .NET 4.6.1 项目中更新或配置服务引用时,VS 抛出下一个错误:

Could not resolve mscorlib for target framework '.NETFramework,Version=v4.6.1'. This can happen if the target framework is not installed or if the framework moniker is incorrectly formatted.

路径长度没问题,我也检查了另一个关于 SO 的答案,但没有任何效果。 也许有人有类似的东西?

很难确认,但我相信我的问题与超过路径中 259 个字符的 TFS 限制有关。简而言之,当从 TFS 获取最新信息时,我认为某些文件由于路径超过 259 个字符而未下载到我的本地计算机。

将工作目录重命名为较短的路径后,我能够配置现有的和新的服务引用。这里有一个 link 讨论限制:TFS Path Too Long Problems

我在 VS2019 上遇到同样的错误。
发生此错误是因为我从未恢复 nuget 包并构建解决方案

还原 nuget 包并完全重建解决方案后,错误消失了!

在我的例子中,进入项目文件夹并手动删除以下内容:
/bin
/obj 解决方案中的每个项目。然后是
的内容 /packages 在解决方案文件夹中
然后重新打开解决方案并重建 + 恢复 nuget 包。

我在 VS 16.10.0 Preview 1.0 for 4.8 中遇到了同样的问题

为了适应它,我首先清理了项目,然后将目标从 4.8 重定向到 4.7.2,然后又返回,然后就成功了。

您应该在项目的应用程序属性中刷新目标框架