WCF WSHTTPBINDING «Не было никакого канала, которое могло принять сообщение с действием»
-
27-09-2019 - |
Вопрос
Обновление] решил проблему, создавая новый web.config. Возможная ошибка была второй конечной точкой («MEX»). [Обновлять/
У меня есть веб-сайт в IIS.
Я пытаюсь позвонить в функцию, но я получаю ошибочность, как:
Там не было никакого канала, которое могло принять сообщение с действием »http: //datenlotsen.cyquest/icyquestservice/validateselfassessment.'
Я принимаю это в IIS на стандартном сайте. Там я создал виртуальный каталог с именем «CyQuestWebservice». Для конфигурации на стороне клиента я использую SOAP UI. Этот инструмент генерирует конфигурацию клиента из WSDL.
Мой webconfig выглядит так, ты можешь мне помочь?
<system.serviceModel>
<extensions>
<behaviorExtensions>
<add name="wsdlExtensions" type="WCFExtras.Wsdl.WsdlExtensionsConfig, WCFExtras, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
</behaviorExtensions>
</extensions>
<services>
<service behaviorConfiguration="CyquestWebService.Service1Behavior"
name="CyquestWebService.CyquestService">
<endpoint address="" behaviorConfiguration="EndPointBehavior"
binding="wsHttpBinding" bindingNamespace="http://Datenlotsen.Cyquest"
contract="CyquestWebService.ICyquestService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" bindingNamespace="http://Datenlotsen.Cyquest"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="EndPointBehavior" >
<wsdlExtensions location="http://wssdev04.datenlotsen.intern/Cyquestwebservice/CyquestService.svc" singleFile="True"/>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="CyquestWebService.Service1Behavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
<system.diagnostics>
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="traceListener"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData= "c:\log\Traces.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>
</configuration>
Решение
Решил проблему, создавая новый web.config. Возможная ошибка была второй конечной точкой («MEX»).
Другие советы
Попробуйте настроить «Пропустить действие SOAP» в True в «Свойства запроса».
У меня было подобное тестирование выпуска wshttpbinding с помощью Soapui.