2017-02-16 67 views
1

在更新本地NuGet包后,它看起来像NuGet没有正确处理项目引用的更新。例如,我们已经将MyProject.Test更新为版本1.2;然而,该项目参考如下:NuGet未正确更新项目引用

<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 

或者只是在管理屏幕上更新软件包应该为我们做到这一点。有什么额外的需要做到这一点?

回答

0

当然,更新NuGet包需要使用不带-reinstall的update-package。命令行功能“更新包-reinstall”是:

删除软件包,然后试图与相同版本

如果定位在 的NuGet画廊相同的包你在更新软件包之前使用这个命令,NuGet将重新安装旧版本软件包并恢复引用。 所以,你需要更新你的MyProject.Test 1.2版中使用“更新包”使用“更新包-reinstall”恢复引用前:或者

update-package -ProjectName projectname 

,简单地更新包中的软件包管理器UI如你所说。那么你不需要做任何其他额外的事情来实现这一点。