我不喜欢与xdt变换战斗,因为这对我来说太过分了,可能会花费相当多的时间。更容易为每个配置文件和变更中的静态代码提供完整的web.config副本。
例如,我有一个配置文件和一个发布配置文件(MyNewProfile),我希望我的发布配置文件在部署时只使用Web.MyNewProfile.config。
但我想将Web.MyNewProfile.config作为纯文本 - 只是一个直接的web.config文件。因此,不会发生任何转换,只需用Web.MyNewProfile.config中的内容完全替换Web.config。
这可能吗?
答案 0 :(得分:3)
只需将Web.WhateverTransform.config文件中的整个配置元素作为替换进行转换,然后在该元素中粘贴您想要的任何内容......这不是您要求的,但它似乎是公平的解决方案。只有一个转换调用,然后您的整个配置文件转换为您想要的任何内容,满足我对您的主要目标的理解:输出web.config与web.Another.config的内容,同时不需要经常照看变换电话。
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform" xdt:Transform="Replace">
<!-- this will be the only element within the configuration node post-transform -->
<thing></thing>
</configuration>
答案 1 :(得分:1)
我不认为Visual Studio中的Web Deploy系统会为您执行此操作(我可能错了...希望有人会纠正我),但您可以让Web Deploy在没有任何转换的情况下运行,并且然后在Web Deploy完成后立即手动将您自己的配置文件复制到已部署文件的顶部,如果您想真正了解,可以自行编写脚本。