web.base.config の次の部分があります。
<system.serviceModel>
<client>
<!-- Reporting Services -->
<endpoint name="ReportExecutionEndpoint" address="http://~MACHINENAMEREPLACEMENTTOKEN~/ReportServer/ReportExecution2005.asmx" binding="basicHttpBinding" behaviorConfiguration="AuthenticatedBehavior" bindingConfiguration="ReportingServicesConfiguration" contract="ReportingWebService.ReportExecutionServiceSoap" />
<!-- Custom Services -->
<endpoint name="Blah1Endpoint" address="net.tcp://~MACHINENAMEREPLACEMENTTOKEN~/DomainServices/blah1.svc" binding="netTcpBinding" behaviorConfiguration="AuthenticatedBehavior" bindingConfiguration="LargerMessagesConfiguration" contract="Fully.Qualified.IBlah1" />
<endpoint name="Blah2Endpoint" address="net.tcp://~MACHINENAMEREPLACEMENTTOKEN~/DomainServices/blah2.svc" binding="netTcpBinding" behaviorConfiguration="AuthenticatedBehavior" bindingConfiguration="LargerMessagesConfiguration" contract="Fully.Qualified.IBlah2" />
<endpoint name="Blah3Endpoint" address="net.tcp://~MACHINENAMEREPLACEMENTTOKEN~/DomainServices/blah3.svc" binding="netTcpBinding" behaviorConfiguration="AuthenticatedBehavior" bindingConfiguration="LargerMessagesConfiguration" contract="Fully.Qualified.IBlah3" />
</client>
</system.serviceModel>
ReportingServicesではなく、<identity><dns /></identity>
すべてのCustomServicesに inを追加したい。そのために、次の変換セグメントがあります。
<system.serviceModel>
<client>
<endpoint xdt:Locator="Condition(contains(@address, 'net.tcp'))">
<identity xdt:Transform="Insert">
<dns value="~MACHINENAMEREPLACEMENTTOKEN~" />
</identity>
</endpoint>
</client>
</system.serviceModel>
問題は、これが最初の CustomServiceに対してのみ行われ、他のすべてに対して行われるわけではないことです (ただし、ReportingServicesは正しくスキップされます)。この変換を変更して、すべてのCustomServicesエンドポイントにヒットするようにするにはどうすればよいですか?