WCF服务启动两次

时间:2015-08-21 17:12:55

标签: .net wcf c#-4.0 netnamedpipebinding

我有一个WCF服务配置为使用Net命名管道绑定。这是服务的配置。

<service name="XX.Impl.Configuration.ConfigurationService" behaviorConfiguration="DefaultServiceBehavior">
    <host>
      <baseAddresses>
        <add baseAddress="net.pipe://localhost/xx/ConfigurationService" />
      </baseAddresses>
    </host>
    <endpoint name="pipeEndPoint" address="" binding="netNamedPipeBinding" behaviorConfiguration="NoDataContextBehavior" bindingConfiguration="pipeBindingConfiguration" contract="ServiceContracts.IConfigurationService" />
    <endpoint name="pipeEndPointMex" address="mex" binding="mexNamedPipeBinding" contract="IMetadataExchange">
    </endpoint>
  </service>

我尝试将服务作为Windows服务的一部分启动,服务已成功启动。在同一台机器上,在运行时,我已经启动了相同的服务,相同的配置和相同的地址作为控制台应用程序的一部分。它运行成功。唯一的区别是Windows服务运行在网络服务身份下,而控制台应用程序运行在我的身份。

我无法理解在Windows服务中的服务正在侦听时控制台应用程序中的服务是如何启动的。我试图运行另一个控制台应用程序实例,它会抛出错误消息&#34;还有另一个端点在监听&#34;。这是有道理的,我无法理解当Windows服务已经启动相同的服务和监听时,控制台应用程序的第一个实例是如何运行的。有人可以解释一下吗?

0 个答案:

没有答案