新下载的包上的 NuGet returns 'Package integrity checks'

NuGet returns 'Package integrity checks' on freshly downloaded packages

我以前从未使用过 VS 和 .NET,总体上我也没有太多的编程经验(我是一名 QA,最近才接触到测试自动化,这可能会解释这个问题的格式你 ;)),所以我在这里有点不合时宜。我已经尝试了我想到的所有想法以及我在 Google 中看到的所有想法,但仍然无法自行解决此问题。

步骤

  1. 通过 MS 的 VS 安装程序全新安装 VS 2019
  2. 通过 VS 从 Bitbucket 克隆存储库;回购包括对 system.IO 和 System.Linq
  3. 的依赖
  4. 尝试构建解决方案

错误结果

来自源 'https://api.nuget.org/v3/index.json' 的错误 NU3008 包 'System.Linq 4.3.0':包完整性检查失败。 来自源的错误 NU3008 包 'System.IO 4.3.0' 'https://api.nuget.org/v3/index.json': 包完整性检查失败。

它适用于同事,即使他检查了我在出现此错误时推出的一些代码更改。

尝试修复

通过 NuGet 包管理器删除缓存 UI,更改到不同的分支并查看它是否在那里工作,删除并重新克隆存储库,重新安装 VS,更新包,擦除与 VS 和 . NET 然后重新安装,手动删除 System.io 和 System.linq DLL,然后重建或更新包,修改随 VS 安装的组件,删除 %userprofile%.nuget\packages 中的所有内容以强制 NuGet 重新下载所有内容。没有任何帮助。

我的直觉是从 NuGet 发送的签名不知何故过时了?因为当我删除所有本地包,清理缓存,然后创建一个新的,干净的项目,字面上只有 'Hello World' 自动生成,然后只尝试安装 System.IO 或 System.Linq通过包管理器手动打包,我得到同样的错误。

问题

这里有什么我可以做的吗,我这边的事情可能导致了这个,或者我需要联系 NuGet 吗?

正如this document所说,

运行 nuget locals http-cache -clearnuget locals -Clear allTools-->Nuget Package Manager- ->包管理器控制台

此外,如果还是不行,请试试这些:

1) 关闭 VS,从 C:\Users\xxx(current user)\AppData\Roaming\NuGet

中删除 nuget.config 文件

删除解决方案文件夹的.vs隐藏文件夹,项目的binobj文件夹,

然后重新启动 VS 重新生成该文件以检查它是否有效。

2) 将您的 nuget.org 包源更改为 http://packages.nuget.org/v1/FeedService.svc/,如下所示:

3) 将 nuget 包 System.IOSystem.Linq 从您同事的 PC 复制到您的 %userprofile%.nuget\packages。然后在那里重新安装你的 nuget 包来检查它是否有效。

4)this link下载最新的nuget.exe v5.7.0然后配置本地路径到系统环境变量PATH 以便从 CMD.

中调用

可以检查关于步骤。

然后,关闭VS然后重启你的项目,运行这些在Package Manager Console下:

 nuget restore

5) 最后,彻底卸载可能不是一个好决定,但值得一试。

找到 C:\Program Files (x86)\Microsoft Visual Studio\Installer\resources\app\layout\InstallCleanup.exe 和 运行 这个程序。

注意: 它将卸载您PC上的所有VS2017VS2019版本并制作一个深度清洁的环境。如果你不介意这些,你可以运行它。

完成后,您可以运行 vs_installer重新安装它。安装后,您可以检查问题是否仍然存在。