【问题标题】:NuGet not correctly updating project referencesNuGet 未正确更新项目引用
【发布时间】:2017-02-17 13:03:47
【问题描述】:

更新本地 NuGet 包后,NuGet 似乎未正确处理项目引用的更新。例如,我们已将 MyProject.Test 更新到 1.2 版;但是,项目参考如下所示:

<Reference Include="MyProject.Test, Version=1.0.1.24568, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\packages\MyProject.Test.1.2.0\lib\net40\MyProject.Test</HintPath>
  <Private>True</Private>
</Reference>

手动更新引用似乎可以纠正这个问题(手动删除和重新添加引用也是如此),但肯定会使用以下方法更新 NuGet 包:

update-package -reinstall 

或者简单地更新管理..屏幕中的包应该为我们做这件事。是否需要做一些额外的事情来实现这一点?

【问题讨论】:

    标签: visual-studio-2015 nuget


    【解决方案1】:

    肯定更新 NuGet 包需要使用 update-package 而不使用 -reinstall。命令行“update-package -reinstall”的作用是:

    删除一个包,然后尝试在 相同版本

    的 NuGet 库

    如果在更新包之前使用该命令,NuGet 将重新安装旧版本包并恢复引用。 因此,在使用“update-package -reinstall”恢复引用之前,您需要使用“update-package”将 MyProject.Test 更新到 1.2 版:

    update-package -ProjectName projectname
    

    或者,如您所述,只需在包管理器 UI 中更新包即可。那么你不需要做任何其他额外的事情来启用它。

    【讨论】:

      猜你喜欢
      • 2015-12-11
      • 1970-01-01
      • 2016-02-17
      • 2019-03-28
      • 2016-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-31
      相关资源
      最近更新 更多