VS2017 缺少命名空间(git 拉取后)

VS2017 Missing namespaces (after git pull)

我有一个 Visual Studio Solution(多个项目),它过去可以在另一台计算机上构建,但在用 Git 拉到新计算机上后无法构建。 IDE (VS2017), platform target (Any CPU), .Net Framework (.Net 4.6.1), ...和其他一切应该是一样的,但它给出一些“The type or namespace name 'nameOfTypeOrNamespace' does not exist in the namespace”错误。还有一些“Metadata file 'pathToFile.dll" could not be found”错误。示例屏幕截图:

大多数缺失的程序集是 self-written,但也有一些是第三方的,如解决方案资源管理器中所示。我的解决方案中似乎也没有参考文件夹:

我知道已经有一些问题涉及缺少名称空间,但 none 似乎符合我的特殊情况。我已经检查了引用和命名空间,但似乎找不到问题(没有错字,因为它以前工作过)。没有项目,别人可能真的很难找到问题,我不能分享,所以我的问题:
应该如何寻找解决方案?

我还检查了我的 .gitignore 文件并确认它不应该导致这个问题。
更新 如评论部分所述:我正在使用 NugetRestore Nuget Packages 选项不起作用。

我目前通过执行以下操作解决了这个问题:

  1. .gitignore-文件中删除 packages

  2. 打开 cmd 并键入以下 Git 命令(请务必先提交所有更改,因为执行以下命令可能会丢失它们):

    一个。 git rm -r --cached .(清除缓存以便 Git 可以检测到更改)
    b. git add .(添加所有更改的文件)
    C。 git commit -m "Fixing the packages issue"(提交更改)

请记住,这只是一个快速修复或黑客攻击,并不能真正解决问题。

@Wouter 的解决方案有效,但正如他所说,这不是最佳方式,会导致大量源代码控制存储被占用,并增加推拉中的下载和上传大小(TFS 中的签入和签出)。

要在 'Restore Nuget Packages' 不起作用的情况下恢复包,请使用此解决方案:

从 Visual studio 的“工具”菜单中,选择 NuGet 包管理器--> 包管理器控制台 和 运行 这个命令:

Update-Package –reinstall

希望有用。