Nuget Config.Transform格式化问题

时间:2013-07-31 12:57:55

标签: web-config nuget app-config

我创建了一个具有以下转换的Nuget config transform file

<?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="admin@mydomain.com" />
                </identity>
            </endpoint>
        </client>
    </system.serviceModel>
</configuration>

当它合并到应用程序的app.config或web.config文件中时会出现问题。它不是干净利落,而是将所有内容连接成一行,如下所示:

    <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="admin@mydomain.com" />                    </identity></endpoint></client></system.serviceModel>

对于那些使用我的软件包的人来说,这是不可读的。有什么我想念的吗?适当的回车也许?

1 个答案:

答案 0 :(得分:4)

NuGet的原始Web.config转换存在格式限制。从v2.6开始,添加了XDT变换,没有这些限制。有关如何将.install.xdt.uninstall.xdt文件用于程序包中的任何XML文件,请参阅docs。一旦我开始使用XDT,格式化问题就消失了。