始终使用最新版本的 nuget 包

Tim*_*ers 6 nuget-package visual-studio-2015

他们是否有一种使用packages.config从提要中自动获取最新nuget包的方法?例如:

在我的包配置中我有:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Autofac" version="4.2.0" targetFramework="net452" />
  <package id="MyOwn.ApiProxy" version="17.2.1.3" targetFramework="net452" />
  <package id="Iesi.Collections" version="4.0.1.4000" targetFramework="net452" />
  <package id="Newtonsoft.Json" version="9.0.1" targetFramework="net452" />
</packages>
Run Code Online (Sandbox Code Playgroud)

在此 packages.config 中,MyOwn.ApiProxy 的版本被指定为 version 17.2.1.3,但 version17.2.1.4已在(私有)nuget feed 中。如何自动更新 packages.config 以获取最新版本的软件包?我应该创建预构建任务,还是可以latest在版本中指定?

使用 Visual Studio 2015 + NuGet 服务器 2.11.2.0。

谢谢

Mat*_* KP 4

从 Nuget v2.8 开始,nuget.config 支持以下属性。

<configuration>
<config> 
    <add key="dependencyversion" value="Highest" /> 
</config>
Run Code Online (Sandbox Code Playgroud)

来源: https: //learn.microsoft.com/en-us/nuget/release-notes/nuget-2.8

  • 通过添加此配置设置,nuget包的初始安装确实会获得最新版本,但它也会在packages.config中写入一行特定版本。这意味着当 feed 中的包更新为“17.2.1.5”时,它不会更新我的packages.config,并且仍然使用旧版本。我也可以做类似 `&lt;package id="MyOwn.ApiProxy" version="Highest" targetFramework="net452" /&gt;` 的事情吗? (2认同)