我的解决方案引用出现了一些问题,因为有人把 NuGet 搞砸了……从源代码管理中恢复会使项目无法加载,我不得不花点时间才能最终加载。当我终于能够让我的项目正确加载时(在头痛之后),我有一个相当大的实验性混乱需要清理,现在什么都没有构建。
Nuget 认为我的依赖项已安装。Visual Studio 不同意。
我必须做些什么才能使 NuGet 和 Visual Studio 相互一致?
我的解决方案引用出现了一些问题,因为有人把 NuGet 搞砸了……从源代码管理中恢复会使项目无法加载,我不得不花点时间才能最终加载。当我终于能够让我的项目正确加载时(在头痛之后),我有一个相当大的实验性混乱需要清理,现在什么都没有构建。
Nuget 认为我的依赖项已安装。Visual Studio 不同意。
我必须做些什么才能使 NuGet 和 Visual Studio 相互一致?
这并不简单,但请尝试以下步骤:
解释:
当 nuget 添加引用时,它会将其添加到 csproj 中,如下所示:
<Reference Include="Newtonsoft.Json">
<HintPath>..\packages\Newtonsoft.Json.4.5.9\lib\net40\Newtonsoft.Json.dll</HintPath>
</Reference>
这意味着包号在 HintPath 中。合并两个分支后,nuget 版本号可能会更改。这导致 HintPath 也应该更改为带有版本的正确路径。这就是为什么 Visual Studio 很难找到它们的原因。
(VisualStudio 2017)。这里的建议都没有奏效...... - 直到我完全关闭 VisualStudio 并重新启动它。它比平时多花了几秒钟,但此后所有依赖关系都恢复了!
在 Visual Studio 2017 for Asp.Net Core 项目中,卸载然后重新加载 .csproj 文件就足够了
在 Visual Studio 解决方案文件夹中,打开“包”文件夹并删除该文件夹内的所有内容。然后恢复nuget包。