大多数解决方案都是在应用针对特定文件的转换时讨论nuget打包,这就是绑定重定向之类的东西将出现在Web.Config或App.Config文件中的原因。但是,如果使用XMLTransform完全松开这些更改,似乎没有办法重定向。这是场景:
app.base.config - 所有常见和默认配置
app.debug.config - 覆盖和配置app的调试版本 app.production.config - 覆盖生产值 ....
app.config - 最终转换,以及nuget包放置绑定重定向的位置
.csproj对于构建的转换如下所示:
所以nuget安装的位丢失了。
是否可以将nuget安装重定向到app.base.config?
可以将Add-BindingRedirect或其他nuget命令作为构建的一部分来重新应用过度更改吗?
答案 0 :(得分:1)
是否可以将nuget安装重定向到app.base.config?
是的,XDT功能可以应用于 ny XML文件。您可以使用 app.base.config。(un)install.xdt 文件直接将转换内容添加到app.base.config文件中。
更多介绍NuGet中的XDT,请参阅以下博客。
https://blogs.msdn.microsoft.com/webdev/2013/10/24/how-to-use-xdt-in-nuget-examples-and-facts/
可以将Add-BindingRedirect或其他nuget命令作为构建的一部分 重新申请改变?
Add-BindingRedirect命令用于检查项目输出路径中的所有程序集,并在必要时将绑定重定向添加到app.config或web.config。它是NuGet的PowerShell命令。因此,重新应用覆盖更改不是构建的一部分。而且我没有发现任何其他命令可以重新应用覆盖更改。
我建议您使用Nuget中的XDT来转换app.config文件中的绑定重定向信息。