我想知道如何调试NuGet包没有正确显示更新。在我的特定情况下, jQuery.Validation 的包是(#34;更新"中唯一剩下的包)。列表,但点击更新按钮什么都不做。这是我的解决方案管理NuGet包的对话框:
点击"更新"按钮将提供一个额外的弹出窗口:
正如你所看到的,一切似乎都略显灰暗(这是什么意思?)。点击" Ok"只是让我回到另一个对话框。
主要问题是我不知道如何调试这类问题。我尝试过以下操作:
jquery.validate.min.js
文件,其中提到版本 1.13.1 ,实际上是对话框中提到的最新版本。packages.config
文件,其中还提到我的解决方案包括版本 1.13.1 。这只是程序包管理器或程序包中的错误吗?如何进一步调试此问题的根本原因?
我使用Visual Studio 2012,更新了产品以及所有扩展(包括NuGet包管理器)。该解决方案最初基于MVC 2模板,并已针对每个主要MVC版本(目前达到MVC 5)进行了更新。只有这个特定的软件包会给您带来麻烦,我已经在此之前成功更新了10多个其他软件包。
答案 0 :(得分:3)
如果您在packages目录中留下旧的NuGet包,则会发生这种情况。
管理解决方案的软件包时,NuGet对话框将显示packages目录中所有软件包的更新,即使它们未安装到任何项目中也是如此。如果您自己管理项目的包,则NuGet对话框不会显示任何包更新可用。
因此,解决方法是从packages目录中删除不需要的NuGet包。