WCFServiceException: Обязательный атрибут 'binding' не найден
Моя служба WCF при размещении выдает ошибку:
Служба WCF PayThisException: Обязательный атрибут "связывание" не найден. (C:\Temp\WCFVirtualDirPath\web.config строка 278)
Пожалуйста, помогите мне с некоторым решением.
Ура, Рави Сантлани
1 ответ
Покажите нам ваш web.config!! Особенно все в <system.serviceModel>
раздел.
Если у вас нет web.config
файл или ваш web.config
не содержит <system.serviceModel>
раздел - это ваша проблема прямо здесь!
Пока вы на самом деле не показываете свой настоящий конфигурационный файл, я могу только догадываться, что может быть не так. Вот пример того, как должна выглядеть конфигурация службы WCF:
<system.serviceModel>
<services>
<service name="WCFBindings.Service1"
behaviorConfiguration="ServiceBehavior1">
<host>
<baseAddresses>
<add baseAddress="http://localhost:7876/YourService/" />
</baseAddresses>
</host>
<!-- Service Endpoints -->
<!-- Unless fully qualified, address is relative to base address
supplied above -->
<endpoint
address=""
binding="wsHttpBinding"
contract="WCFBindings.IService1">
<!--
Upon deployment, the following identity element should be
removed or replaced to reflect the identity under which the
deployed service runs. If removed, WCF will infer an
appropriate identity automatically.
-->
<identity>
<dns value="localhost"/>
</identity>
</endpoint>
<!-- Metadata Endpoints -->
<!-- The Metadata Exchange endpoint is used by the service to
describe itself to clients. -->
<!-- This endpoint does not use a secure binding and should be
secured or removed before deployment -->
<endpoint
address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange"/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior1">
<!-- To avoid disclosing metadata information, set the value
below to false and remove the metadata endpoint above
before deployment -->
<serviceMetadata httpGetEnabled="True"/>
<!-- To receive exception details in faults for debugging
purposes, set the value below to true. Set to false
before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="False" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
В вашем сообщении говорится, что "отсутствует обязательный атрибут", поэтому, скорее всего, вы не указали ABC of WCF
- адрес, обязательность, договор на вашем <endpoint>
в вашем сервисе конфиг.