Я пытаюсь разместить существующую службу WCF и службу WCF REST в качестве служб приложений Azure. Я использовал опцию публикации от Visual Studio, как в посте Здесь
Я могу просмотреть размещенный URL-адрес для сайта WCF SOAP и сайта WCF REST, но когда я добавляю ссылку на службу для сайта WCF SOAP и вызываю на ней метод, я получаю ошибку ниже
То же самое со службой отдыха WCF, когда я вызываю метод REST, теперь я получаю сообщение об ошибке 404.
Не было прослушивания конечной точки на https://wcfservice.azurewebsites.net/WebService.svc, которая могла бы принять сообщение. Это часто вызвано неправильным адресом или действием SOAP. Смотрите InnerException, если имеется, для более подробной информации.
Удаленный сервер возвратил ошибку: (404) Not Found.
В журнале невыполненных запросов, т. Е. В журнале w3svcxxxx, указано, что запрос https://WcfService:80/Webservice.svc 404 не найден.
Для Службы Отдыха WCF
https://WcfService:80/RESTservice.svc/GetData 404. Состояние не найдено.
Почему служба внутренне вызывает https://WcfService:80,, для этого потребуется настройка для настройки. Пытался поискать, чтобы посмотреть, смогу ли я найти какую-нибудь помощь в этом, но не смог найти много.
Кроме того, у меня есть еще один сайт WCF, который я развернул в Службах приложений, который настроен с базовым HttpBinding, и этот сайт работал нормально, и я смог получить данные, используя его.
Ниже приведен параметр web.config на веб-сайте, я использую wsHttpBinging для службы WCF SOAP
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="WebServiceOnline">
<!-- To avoid disclosing metadata information, set the values below to false before deployment -->
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="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>
<endpointBehaviors>
<behavior name="AjaxBehavior">
<webHttp />
</behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
<services>
<service name="WcfService.WebServiceOnline" behaviorConfiguration="WebServiceOnline">
<endpoint binding="wsHttpBinding" bindingName="wsSecurityByTransport" contract="WcfService.IWebServiceForOnline" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
<service name="WcfService.RESTService" behaviorConfiguration="WebServiceOnline">
<endpoint address="" binding="webHttpBinding" contract="WcfService.IRESTService" name="RunningBarbus.Services.RunningBarbusService" behaviorConfiguration="AjaxBehavior">
<identity>
<dns value="locahost" />
</identity>
</endpoint>
<endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
</service>
</services>
<bindings>
<wsHttpBinding>
<binding name="wsSecurityByTransport">
<security mode="Transport">
<transport clientCredentialType="None" />
<message clientCredentialType="Certificate" />
</security>
</binding>
</wsHttpBinding>
</bindings>