无法在Allscripts中找到默认端点元素错误

时间:2012-06-15 20:35:43

标签: c# .net wcf

我想连接到WCF服务。服务引用驻留在类库中。通过向单元测试项目添加App.config,我成功连接到MSTEST单元测试中的服务。我没有成功连接到应用程序中的服务。我找到了应用程序的配置文件。我能够编辑该文件,并确认我可以通过

访问我添加到配置中的密钥

<add key="testKey"

但是,当我尝试在应用程序中连接时,我收到错误

无法在ServiceModel客户端配置部分中找到引用合同“ContractName.Service”的默认端点元素。这可能是因为在客户端元素中找不到与此契约匹配的端点元素。

我添加了

部分
<system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="BasicHttpBinding_IPinGenerator" closeTimeout="00:01:00"
                 openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                 allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
                 maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
                 messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
                 useDefaultWebProxy="true">
                    <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                     maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                    <security mode="None">
                        <transport clientCredentialType="None" proxyCredentialType="None"
                         realm="" />
                        <message clientCredentialType="UserName" algorithmSuite="Default" />
                    </security>
                </binding>
            </basicHttpBinding>
        </bindings>
        <client>
            <endpoint address="http://somewhere"
             binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IPinGenerator"
             contract="CompanyNamePinGenerator.IPinGenerator" name="BasicHttpBinding_IPinGenerator" />
        </client>
    </system.serviceModel>

然而,它并没有解决问题。我还尝试将命名空间添加到contract=""和生成的代码属性

[System.ServiceModel.ServiceContractAttribute(ConfigurationName=

我有什么想法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

出现此问题的原因是您在客户端配置中没有与名称ContractName.Service匹配的任何端点。

我只看到您只有一个端点具有不同的合同CompanyNamePinGenerator.IPinGenerator

位于代理文件中的服务类或接口引用ContractName.Service并且配置中缺少该服务类。

你必须确保几件事:

  1. 将生成的代理更新为最新的
  2. 确保客户端配置包含服务所需的所有端点。
  3. 通常当我遇到这类问题时,我打开VS命令提示符运行svcutil.exe并从生成的文件中复制代理服务器代码和客户端配置。

相关问题