我正在创建一个 nuget 包,其中安装该包的部分结果是修改我的 web.release.config。
我使用 web.release.config.install.xdt 将元素插入到此文件中没有问题,但我需要在要插入的元素上保留 xdt:Transform 和 xdt:Locator 属性,因为这些转换需要在以下情况下运行该应用程序是为部署而构建的。
例如,在安装 nuget 包时我希望看到:
<add key="serilog:using" value="Serilog.Sinks.Seq" xdt:Transform="InsertIfMissing" xdt:Locator="Match(key)" />
显示在 web.release.config 中,包括 xdt:Transform 和 xdt:Locator 属性。
是否有可能做到这一点?
我不相信 msbuild 或 SlowCheetah 不支持你想要做的事情。大多数 NuGet 包所有者对客户的实现了解不够,无法将值设置到特定于环境的配置中。此外,转换工具在编写时并未考虑 NuGet,因为它们是为了满足不同的需求而构建的。关于这些坏消息我很遗憾。
您也许可以使用 init.ps1 powershell 脚本来完成此操作(NuGet 将在解决方案中首次安装包时运行此脚本),但它会不太干净。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)