WCF开发常见问题:“There is already a listener on IP endpoint 0.0.0.0:4503”

在寄宿到控制台的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即可。

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

 

你可能感兴趣的:(问题,端口,WCF,常见,休闲)