Как решить ошибку «ChannelDispatcher не может открыть свой IChannelListener»?

Я пытаюсь установить связь между WCF, размещенным в службе Windows, и моим графическим интерфейсом службы. Проблема заключается в том, что я пытаюсь выполнить метод OperationContract, который я получаю.

"The ChannelDispatcher at 'net.tcp://localhost:7771/MyService' with contract(s) '"IContract"' is unable to open its IChannelListener."

Мой app.conf выглядит так:

<configuration>
<system.serviceModel>
    <bindings>
        <netTcpBinding>
            <binding name="netTcpBinding">
                <security>
                    <transport protectionLevel="EncryptAndSign" />
                </security>
            </binding>
        </netTcpBinding>
    </bindings>
    <behaviors>
        <serviceBehaviors>
            <behavior name="MyServiceBehavior">
                <serviceMetadata httpGetEnabled="true" httpGetUrl="http://localhost:7772/MyService" />
                <serviceDebug includeExceptionDetailInFaults="true" />
            </behavior>
        </serviceBehaviors>
    </behaviors>
    <services>
        <service behaviorConfiguration="MyServiceBehavior"
            name="MyService.Service">
            <endpoint address="net.tcp://localhost:7771/MyService" binding="netTcpBinding"
                bindingConfiguration="netTcpBinding" name="netTcp" contract="MyService.IContract" />
        </service>
    </services>
</system.serviceModel>

Порт 7771 прослушивает (проверено с помощью netstat), и svcutil может генерировать конфиги для меня.

Мы ценим любые предложения.

Трассировка стека из исключения

Server stack trace: 
   at System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter)
   at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Есть одно внутреннее исключение (но не в Exeption.InnerExeption, но в Exeption.Detail.InnerExeption - метод ToString () не показывает этого)

A registration already exists for URI 'net.tcp://localhost:7771/MyService'.

Но мой сервис указал этот URI только в файле app.config, нигде больше. Во всем решении этот URI появляется на сервере один раз, а клиент - один раз.

Ответы на вопрос(7)

Ваш ответ на вопрос