WSHttpBinding в порту 8080 WCF используется другим приложением - PullRequest
0 голосов
/ 17 мая 2019

В нашем проекте мы используем службу WCF, иногда мы получаем, что используется исключительный порт. Я искал, что все, что я обнаружил, - это ошибка при дуплексном соединении и использование атрибута clientBaseAddress, как указано в этой ссылке

Так может кто-нибудь иметь представление о том, как решить эту проблему для WSHttpBinding ??

Мой код файла app.config показан ниже.

<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<services>
  <service behaviorConfiguration="MyStandardServiceBehave" name="Services.TestService">
    <endpoint address="http://localhost:8080/TestService"
      binding="wsHttpBinding" bindingConfiguration="standardServiceConfiguration"
      contract="ServiceContracts.ICommonService" />
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
    <host>
      <baseAddresses>
        <add baseAddress="http://localhost:8080/TestService" />
      </baseAddresses>
    </host>
  </service>
</services>
<bindings>
  <wsHttpBinding>
    <binding name="standardServiceConfiguration"
           maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" >
      <readerQuotas maxDepth="2147483647" maxBytesPerRead="2147483647"
       maxArrayLength="2147483647" maxStringContentLength="2147483647" />
    </binding>
  </wsHttpBinding>
</bindings>
<behaviors>
  <serviceBehaviors>
    <behavior name="MyStandardServiceBehave">
      <serviceMetadata httpGetEnabled="true"/>
      <serviceDebug includeExceptionDetailInFaults="True"/>
    </behavior>
  </serviceBehaviors>
</behaviors>    

1 Ответ

1 голос
/ 17 мая 2019

Вы не используете дуплексные соединения (wsDualHttpBinding).Вы используете простую wsHttpBinding.Так что это не имеет к этому никакого отношения.

Это просто связано с тем, что порт уже используется другим приложением (как уже сообщалось в сообщении об ошибке).

Aпорт может использоваться только одним процессом.Поэтому вы должны либо остановить существующий процесс, либо использовать порт, отличный от 8080, для службы WCF.

См. здесь , чтобы узнать, какое приложение использует ваш порт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...