WCF错误记录一

时间:2022-03-27 20:05:54
wcf错误记录一
1.服务“WcfSend.Service1”有零个应用程序(非基础结构)终结点。这可能是因为未找到应用程序的配置文件,或者在配置文件中未找到与服务名称匹配的服务元素,或者服务元素中未定义终结点。
答:服务命名空间错误,定义终结点。如下
 <service behaviorConfiguration="NewBehavior0" name="WcfServiceLibrary1.Service1">
        <endpoint address="" binding="netTcpBinding" bindingConfiguration=""
          contract="WcfServiceLibrary1.IService1" />




2.要使用采用服务实例的其中一个 ServiceHost 构造函数,服务的 InstanceContextMode 必须设置为 InstanceContextMode.Single。可以通过 ServiceBehaviorAttribute 进行此配置。否则,请考虑使用采用 Type 参数的 ServiceHost 构造函数。
答:WCF库实现接口的类没有定义单个实例。
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]


3.HTTP 无法注册 URL http://+:8585/Send/,因为另一应用程序正在使用 TCP 端口 8585。
答:后台app.config配置端口号相同所产生错误 
    <add baseAddress="http://localhost:8586/Send"/>
4.协定需要双工,但是绑定“BasicHttpBinding”不支持它或者因配置不正确而无法支持它。 
答:修改为wsDualHttpBinding  (双工通信)
5.找不到具有绑定 NetTcpBinding 的终结点的与方案 net.tcp 匹配的基址。注册的基址方案是 [http]。 
解:
6.未能从程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicK
答:原因是高版本.net framework后又安装低版本.net framework
    在打开或关闭windows功能中找到Microsoft .NET Framework 3.5.1
    项中把第一项关闭,(windows Communication Foundation HTTP Activation)