0

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

脚步

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

错误结果

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

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

尝试修复

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

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

问题

有什么我可以在这里做的吗,我这边可能会导致这种情况,还是我需要联系 NuGet?

4

1 回答 1

0

正如这份文件所说,

Toolsnuget locals http-cache -clear -- > Nuget Package Manager --> Package Manager Consolenuget locals -Clear all下运行。

此外,如果它不起作用,请尝试以下方法:

1)关闭VS,删除nuget.config文件C:\Users\xxx(current user)\AppData\Roaming\NuGet

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

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

2)像这样改变你的nuget.org包源:http://packages.nuget.org/v1/FeedService.svc/

在此处输入图像描述

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

4)nuget.exe v5.7.0从此链接下载最新版本,然后将其本地路径配置到系统环境变量PATH中,以便从CMD调用它。

可以查看有关该步骤的链接。

然后,关闭 VS,然后重新启动您的项目,在包管理器控制台下运行这些:

 nuget restore

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

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

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

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

于 2020-10-12T03:24:28.843 回答