Не удалось найти элемент конечной точки по умолчанию, ссылающийся на контракт "IAuthenticationService" в разделе конфигурации клиента ServiceModel

Я попытался создать простое приложение WCF, я не изменил ни одну из существующих конфигураций по умолчанию. Я попытался использовать сервис с помощью TestClient создается с помощью svcutil.exe. Он показывает сообщение об ошибке "Could not find default endpoint element that references contract 'IAuthenticationService' in the ServiceModel client configuration section. This might be because no configuration file was found for your application, or because no endpoint element matching this contract could be found in the client element." Я попытался поместить конечную точку в localhost: номер порта/тест.svc, но он показывает ту же ошибку.

этот код отображается после выполнения клиента веб-теста. Я не мог проследить ошибку после поиска в течение долгих часов интернет

вот мой testClients clientdll.config

<configuration>
    <system.serviceModel>
        <bindings>
            <wsHttpBinding>
                <binding name="wsHttpBinding" closeTimeout="00:01:00" openTimeout="00:01:00"
                    receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false"
                    transactionFlow="false" hostNameComparisonMode="StrongWildcard"
                    maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
                    messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true"
                    allowCookies="false">
                    <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                        maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                    <reliableSession ordered="true" inactivityTimeout="00:10:00"
                        enabled="false" />
                    <security mode="Message">
                        <transport clientCredentialType="Windows" proxyCredentialType="None"
                            realm="" />
                        <message clientCredentialType="Windows" negotiateServiceCredential="true"
                            algorithmSuite="Default" establishSecurityContext="true" />
                    </security>
                </binding>
            </wsHttpBinding>
        </bindings>
        <client>
            <endpoint address="http://localhost:2490/AuthenticationService.svc"
                binding="wsHttpBinding" bindingConfiguration="wsHttpBinding"
                contract="IAuthenicationService" name="wsHttpBinding">
                <identity>
                    <dns value="localhost" />
                </identity>
            </endpoint>
        </client>
    </system.serviceModel>
</configuration>

2 ответов


попробуйте удалить конечные точки там и использовать

 compilation debug=true 

в интернете.конфиг. тогда после попытки

svcutil.exe http://your_wsdl

вы будете генерировать выходной.конфиг. Попробуйте ввести узлы servicemodel, заменив веб-сайт или приложение клиента выводом.модель конфигурации службы. Это сработает


Это может быть потому, что конфигурации не найден файл для вашего приложение, или потому что нет элемента конечной точки, соответствующего этому контракту может быть найден в клиентском элемент.

название привязки или контракта будет неправильным. Вы confing должны выглядеть что-то вроде

<system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="Binding1" />
      </basicHttpBinding>
    </bindings>
    <client>
      <endpoint address="http://foo" binding="basicHttpBinding" bindingConfiguration="Binding1" contract="Service.MyService" name="MyService" />
    </client>
  </system.serviceModel>

убедитесь, что bindingConfiguration соответствует binding name. В приведенном выше примере Binding1