WCF 服务名称 &绑定名称 [英] WCF Service Name & Binding Name

查看:39
本文介绍了WCF 服务名称 &绑定名称的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在一个 App.Config 文件中组合了两个 WCF 服务.我无法运行它(应用程序编译但在服务初始化时失败).

I have two WCF Services combined in a single App.Config file. I can't get the thing to run (the application compiles but fails at initialization of the services).

我想知道是否需要将服务名称设置为与也定义为整个服务一部分的其他名称相同?

I'm wondering whether I need to set the service name to be the same as something else that is also defined as part of the service overall?

类型初始化异常

{"Service 'MurexUploadObjects.ResponseService' 具有零个应用程序(非基础设施)端点.这可能是因为找不到您的应用程序的配置文件,或者因为在配置文件中找不到与服务名称匹配的服务元素,或者因为没有在服务元素中定义端点."}

{"Service 'MurexUploadObjects.ResponseService' has zero application (non-infrastructure) endpoints. This might be because no configuration file was found for your application, or because no service element matching the service name could be found in the configuration file, or because no endpoints were defined in the service element."}

<system.serviceModel>
<configuration>

<behaviors>
 <serviceBehaviors>
   <behavior name="Service1Bevhavior">
   </behavior>
   <behavior name="Service2Bevhavior">
   </behavior>
   </serviceBehaviors>
  </behaviors>

   <bindings>
    <netTcpBinding>
      <binding name="tcpBloombergServiceEndPoint" closeTimeout="00:01:00"
          openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
          transactionFlow="false" transferMode="Buffered" transactionProtocol="OleTransactions"
          hostNameComparisonMode="StrongWildcard" listenBacklog="10" maxBufferPoolSize="524288"
          maxBufferSize="65536" maxConnections="10" maxReceivedMessageSize="65536">
       <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
      maxBytesPerRead="4096" maxNameTableCharCount="16384" />
       <reliableSession ordered="true" inactivityTimeout="00:05:00"
      enabled="true" />
       <security mode="None">
       <transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
       <message clientCredentialType="Windows" />
       </security>
     </binding>

     <binding name="TransactedBinding">
     <security mode="None" />
     </binding>

   </netTcpBinding>
   </bindings>

 <services>

 <!--SERVICE ONE-->
 <service name="INSERT NAME HERE">
   <endpoint address="net.tcp://AP434190:8732/BloombergService/"
binding="netTcpBinding"
contract="BloomberPriceListenerService.IBloombergPriceListenerService"
bindingConfiguration="tcpBloombergServiceEndPoint"
name="tcpBloombergServiceEndPoint" />
 </service>

 <!--SERVICE TWO-->
 <service name="INSERT NAME HERE">
   <endpoint address="net.tcp://localhost:8735/private/MurexUploadObjects/ResponseService"
               binding="netTcpBinding"
               contract="MurexUploadObjects.IResponseService"
               bindingConfiguration="TransactedBinding"
               name="TransactedBinding"/>
   </service>
 </services>   

</system.serviceModel>  
</configuration>

推荐答案

服务名称必须是您的服务类的完全限定名称,包括命名空间,例如

The service name must be the fully qualified name of your service class, including the namespace, e.g.

<service name="YourServiceNamespace.YourService"> 

它不能只是任何东西 - ServiceHost 使用服务类的名称来查找正确的服务配置.

It can't be just anything - the name of the service class is used by ServiceHost to find the right service configuration.

这篇关于WCF 服务名称 &amp;绑定名称的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆