У меня есть служба WCF, размещенная в Windows Azure, и я недавно изменил ее контракт на двухсторонний контракт (для поддержки индикатора выполнения на клиенте). Сначала я использовал wsDualHttpBinding, который хорошо работал на моем локальном компьютере, но, как и ожидалось, не сработал после его развертывания.
Сейчас я пытаюсь настроить службу для работы с netTcpBinding, но получаю сообщение об ошибке «Указанный протокол недействителен. Протокол tcp для привязки с именем« Endpoint1 »в настоящее время не поддерживается».
ServiceDefinition.csdef:
<Endpoints>
<InputEndpoint name="AlertsEndpoint" protocol="tcp" port="3030" />
</Endpoints>
Web.config:
<services>
<service name="AlertsService.AlertsService" behaviorConfiguration="AlertsServiceBehavior">
<endpoint address="" binding="netTcpBinding" bindingConfiguration="NetTcp" contract="AlertsService.IAlertsService" />
<endpoint address="mex" binding="mexTcpBinding" bindingConfiguration="MexTcp" contract="IMetadataExchange" />
</service>
</services>
<bindings>
<netTcpBinding>
<binding name="NetTcp" />
</netTcpBinding>
<mexTcpBinding>
<binding name="MexTcp"/>
</mexTcpBinding>
</bindings>