【问题标题】:XDT Transforms - Transforming the transformXDT 变换 - 变换变换
【发布时间】:2015-06-19 19:16:11
【问题描述】:

我正在创建一个 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 属性。

可以这样做吗?

【问题讨论】:

  • 我已在 nuget 博客上为此设置了 question

标签: c# visual-studio xdt-transform


【解决方案1】:

我不相信 msbuild 或 SlowCheetah 支持您尝试做的事情。大多数 NuGet 包所有者对他们的客户实施了解不够,无法将值设置到特定于环境的配置中。此外,转换工具在编写时并未考虑到 NuGet,因为它们是为满足不同需求而构建的。很抱歉这个坏消息。

您也许可以使用 init.ps1 powershell 脚本来完成此操作(NuGet 将在第一次将软件包安装到解决方案中时运行此脚本),但它不够干净。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多