在寄宿到控制台的WCF服务启动时或者运行期间,经常自己停掉,通过日志记录可以看到

2010/10/27 10:19:08 : There is already a listener on IP endpoint 0.0.0.0:4503.  Make sure that you are not trying to use this endpoint multiple times in your application and that there are no other applications listening on this endpoint.

应该是同一个端口被多个服务监听了,查了一下服务的配置,果然如此

 

代码
<service behaviorConfiguration="WCFService.Behavior" name="WCFService.SynchronizationService"> 
        
<host> 
          
<baseAddresses> 
            
<add baseAddress="net.tcp://localhost:4503/SynchronizationService"/> 
          
</baseAddresses> 
        
</host> 
        
<endpoint address="" binding="netTcpBinding" contract="WCFService.ISynchronizationService" bindingConfiguration="netTcpBindConfig"></endpoint> 
        
<endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange" ></endpoint> 
      
</service>

      
<service behaviorConfiguration="WCFService.Behavior" name="AuthenticateService"> 
        
<host> 
          
<baseAddresses> 
            
<add baseAddress="net.tcp://localhost:4503/AuthenticateService"/> 
          
</baseAddresses> 
        
</host> 
        
<endpoint address="" binding="netTcpBinding" contract="IAuthenticateService" bindingConfiguration="netTcpBindConfig"></endpoint> 
        
<endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange" ></endpoint> 
      
</service>

 

于是将其中一个服务的端口改掉成4504即可。

为了保证端口的唯一性,首先这个端口不能是常见的系统端口,其次不能是其他服务所用的端口。

相关文章:

  • 2021-11-11
  • 2021-05-19
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-21
  • 2021-08-30
猜你喜欢
  • 2021-10-19
  • 2022-02-16
  • 2022-01-18
  • 2021-12-27
  • 2022-12-23
  • 2021-10-28
相关资源
相似解决方案