Reputation: 7795
I have created a Nuget config transform file that has the following transformation:
<?xml version="1.0">
<configuration>
<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="NetTcpBinding_IMyService" />
</netTcpBinding>
</bindings>
<client>
<endpoint address="net.tcp://mydomain/MySvc/MySvc.svc"
binding="netTcpBinding" bindingConfiguration="NetTcpBinding_IMyService"
contract="MyNamespace.MyService" name="NetTcpBinding_IMyService">
<identity>
<userPrincipalName value="[email protected]" />
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>
The problem occurs when it merges into an application's app.config or web.config file. Instead of being cleanly spaced it joins everything into one line as follows:
<system.serviceModel><bindings><netTcpBinding><binding name="NetTcpBinding_IMyService" /></netTcpBinding></bindings><client><endpoint address="net.tcp://mydomain/MySvc/MySvc.svc" binding="netTcpBinding" bindingConfiguration="NetTcpBinding_IMyService" contract="MyNamespace.MyService" name="NetTcpBinding_IMyService"><identity><userPrincipalName value="[email protected]" /> </identity></endpoint></client></system.serviceModel>
This is not very readable to those consuming my package. Is there something I am missing? Proper carriage returns perhaps?
Upvotes: 6
Views: 1222
Reputation: 4112
There are formatting limitations in the original Web.config transforms of NuGet. As of v2.6, XDT transforms have been added which don't have these limitations. See the docs on how to use the .install.xdt
and .uninstall.xdt
files for any XML files in your package. Once I started using XDT, formatting issues went away.
Upvotes: 5