2015-07-13 114 views
1

我们正尝试使用每晚构建自动更新项目中的NuGet程序包。原因是我们使用内部NuGet存储库来共享某些共享库代码的最新版本,并且我们希望我们所有的项目都使用最新版本。自动更新nuget软件包 - 不会添加程序集重定向

运行nuget.exe更新排序工作,但是,它不会将绑定重定向添加到app.config和web.config。当通过NuGet包管理器或Visual Studio包管理器UI进行更新时,会添加绑定重定向。目前为止我想到的潜在解决方案是:

  • 更新包时以编程方式添加绑定重定向。这听起来很乱。
  • 以某种方式从Visual Studio外部调用Visual Studio的包管理器控制台。我不知道这是否可能?

任何人都可以想到一个解决方案吗?如果是这样,我会很感激!现在已经困扰了我几天。

+0

我不认为第二个方案是可行的,看看[文档的NuGet(https://docs.nuget.org/consume/nuget-faq#can-我使用nuget-outside-of-visual-studio?) –

+0

我自己也得出了相同的结论......所以我想我们要做的就是通过visual studio手动更新所有内容,所有项目。 – Hallgeir

回答

0

我刚才又遇到了同样的问题,并创建了Add-BindingRedirect。软件包可从releases page下载。您可以从解决方案根文件夹中调用Add-BindingRedirect.exe。它会将绑定重定向添加到它找到的所有[web|app].config文件中。

用法:

\path\to\nuget\nuget.exe update 
\path\to\Add-BindingRedirect\Add-BindingRedirect.exe 
+0

注意:从命令提示符运行'nuget update'命令不会运行PowerShell安装后脚本,因此您可能有时需要放入Visual Studio。 [OctoPack](https://github.com/OctopusDeploy/OctoPack)包是一个很好的例子。 – uglybugger

相关问题