Search code examples
web-configmsdeployxdt-transformpublish-profilesweb.config-transform

Web Config Transforms are HTML Encoding some of the config and breaking it


I have the following:

Web.Config (this is a segment of an NLog configuration)

<target name="fileAsException" 
        xsi:type="FilteringWrapper" 
        condition="length('${exception}')>0">
    ... removed ...
</target>

This is translated to the following when built with release:

<target name="fileAsException" 
        xsi:type="FilteringWrapper" 
        condition="length('${exception}')&gt;0">
    ... removed ...
</target>

As you can see the condition expression has been HTML Encoded resulting in the &gt; replacing the >. This causes the condition to not work.

There is nothing specific to this within my web.release.config file, it is simply copied over from the base web.config.

How can I suppress this encoding?


Solution

  • I have spoken to Microsoft and they have asked me to open a bug.

    https://connect.microsoft.com/VisualStudio/feedback/details/797554/web-config-transforms-are-html-encoding-some-of-the-config-and-breaking-it