找不到引用合同错误的默认端点元素

时间:2013-05-17 21:50:56

标签: wcf app-config .net-4.5

有什么想法吗?

我知道这是被问到的负载,因为我检查过一堆链接/网站,比如这个问题: Could not find default endpoint element

问题是我已经将 system.serviceModel 的所有复制完成到主App.Config文件,甚至创建了一个APP.CONFIG文件(并复制了这些引用)以供所有解决方案中的相应项目...我仍然得到错误。

我正在使用构造函数:

RegistrationService = new BnRegistrationService.RegistrationServiceClient();  

甚至尝试将EndPoint名称传递下来也无济于事。

我的 system.serviceModel 部分如下所示:

    <system.serviceModel>
    <bindings>
        <basicHttpBinding>
            <binding name="BasicHttpBinding_ISecurityService" />
            <binding name="BasicHttpBinding_IBidService" />
            <binding name="BasicHttpBinding_IConfigurationService" />
            <binding name="BasicHttpBinding_IRegistrationService" />
        </basicHttpBinding>
    </bindings>

  <client>
    <endpoint address="http://localhost:5166/SecurityService.svc"
      binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_ISecurityService"
      contract="BnSecurityService.ISecurityService" name="BasicHttpBinding_ISecurityService" />
    <endpoint address="http://localhost:5166/BidService.svc" binding="basicHttpBinding"
      bindingConfiguration="BasicHttpBinding_IBidService" contract="BnBidService.IBidService"
      name="BasicHttpBinding_IBidService" />
    <endpoint address="http://localhost:5166/ConfigurationService.svc"
      binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IConfigurationService"
      contract="BnConfigurationService.IConfigurationService" name="BasicHttpBinding_IConfigurationService" />
    <endpoint address="http://localhost:5166/RegistrationService.svc"
      binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IRegistrationService"
      contract="BnRegistrationService.IRegistrationService" name="BasicHttpBinding_IRegistrationService" />
  </client>
</system.serviceModel>

我接近眼泪这个错误,我看到很多网站上的错误消息 - 所有人都说将上述内容复制到Windows项目的MAIN app.config文件中,但对于某些人来说(可能是STUPID - 代表我)因为它不起作用。

我在BaseForm中初始化所有这些,并且所有其他形式都继承了这一点,导致可怕的Designer错误屏幕显示错误:

无法在ServiceModel客户端配置部分找到引用合同'BnRegistrationService.IRegistrationService'的默认端点元素。这可能是因为没有找到您的应用程序的配置文件,或者因为没有匹配此合同的端点元素可能可以在客户端元素中找到。“

有什么想法吗?

提前非常感谢!!

1 个答案:

答案 0 :(得分:0)

RIGHT!固定!不是我理想的解决方案,但我从所有其他形式中删除了BASEFORM继承,并按照默认设置扩展了FORM!错误消失了。 BaseForm与其他文件位于同一个项目中,因此我无法在错误的文件中看到与<system.serviceModel>部分存在错误的.c​​onfig文件有关的问题。出于某种原因,您可以在运行时实例化WCF服务,但如果在BaseForm中,这在设计时会失败。