在使用WCF服务时找不到端点元素

时间:2016-10-06 05:46:03

标签: c# .net wcf wcf-binding

尝试使用onPostExecute()时出现以下错误。 WCF service

  

找不到名称为“BasicHttpBinding_IService1”的端点元素   并在ServiceModel客户端中签订“ServiceReference1.IService1”   配置部分。这可能是因为没有配置文件   找到您的应用程序,或者因为没有端点元素匹配   这个名字可以在客户端元素中找到。

WCF服务在我的解决方案中是集体自由,我正在尝试在同一解决方案的另一个类自由项目中使用它。

Client.config

I looked into this issue and both name and contract values are same in both config files

WCF配置文件

  <endpoint address="http://localhost:8733/Design_Time_Addresses/WcfServiceLibrary1/Service1/"
    binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IService1"
    contract="ServiceReference1.IService1" name="BasicHttpBinding_IService1" />
</client>

2 个答案:

答案 0 :(得分:1)

我认为您的问题正如您在问题中所说的那样“You are trying to consume the service in a class library and calling the class library from another project."请参阅此链接以获取原始答案。link

要解决您的问题,您只需将客户端绑定详细信息复制到主调用方项目配置文件。

  <system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpBinding_IService1" />
      </basicHttpBinding>
    </bindings>
    <client>
      <endpoint address="http://localhost:8733/Design_Time_Addresses/WcfServiceLibrary1/Service1/"
        binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IService1"
        contract="ServiceReference1.IService1" name="BasicHttpBinding_IService1" />
    </client>
  </system.serviceModel>

答案 1 :(得分:0)

尝试使用具有完整命名空间的fullname标识符作为服务名称和合同。

<service name="SOLUTIONNAME.WcfServiceLibrary1.Service1">
     <endpoint address="" binding="basicHttpBinding" 
     contract="SOLUTIONNAME.WcfServiceLibrary1.IService1">
     ...

 </service>