【发布时间】:2019-03-26 20:50:49
【问题描述】:
更新并包含一些 NuGet 包后,我现在收到许多类似以下的编译错误:
“对象”类型是在未引用的程序集中定义的。您必须添加对程序集 'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 的引用
我查看了You must add a reference to assembly mscorlib, version=4.0.0,但我没有运行 .Net core - 这是一个 ASP.NET MVC、.Net Framework 4.7.2 项目。
没有要更新的 project.json。我已经包含了 Microsoft.NETCore.Portable.Compatibility NuGet 包,但没有效果。
这是什么原因造成的,我该如何解决?
【问题讨论】:
-
尝试重新启动 Visual Studio 的所有实例,清理和构建解决方案,然后在 NuGet 控制台中运行
Update-Package -Reinstall。运行Update-Package -Reinstall后,您可能需要尝试另一个 clean + build。 -
此外,有时将
/packages文件夹签入源代码管理可能会导致此类问题。从源代码管理中删除它并重新下载项目并重试(确保 NuGet 恢复发生)。 -
@LewsTherin 没有变化(尽管重新安装确实引发了警告,但不确定这是否相关 - “目录'内容'不为空。正在跳过......”)。我的包文件夹是 .gitignore 的一部分。
-
@LewsTherin 尝试删除本地存储库,重新克隆,然后再做一次……这次成功了。不知道问题是什么,但现在已经解决了。
标签: c# .net asp.net-mvc