Проблема использования развернутого веб-сервиса asp.net для IIS6

При попытке обновить веб-ссылку на развернутый веб-сервис asp.net из приложения Windows Form, я получаю сообщение об ошибке.

Невозможно загрузить следующие файлы из.
https://webserver/webservices/myservice.asmx?wsdl

For some reason it is looking at a host called webserver, but that isn't what it needs to look for for the WSDL. It needs to look at the domain name that I put in for the web service reference to begin with. I suppose I have a problem in IIS.

Что я могу сделать, чтобы это исправить?

5 ответов

Решение

Можете ли вы попробовать использовать wsdl.exe для генерации прокси-класса для того же URL- адреса?

wsdl /out:myProxyClass.cs https://<server>/webservices/myservice.asmx?wsdl

У нас был веб-сервис VS 2003 1.1, и мы не смогли соединиться с ошибкой определения wsdl.

Оказывается, проблема была адресована родственнику Ури. Мне потребовалось два дня, чтобы понять это.

ПЛОХО: [WebService (Namespace = " http:/MyWebService.com/"]

ХОРОШО: [WebService (Namespace = " http://tempuri.org/"]

убедитесь, что пространство имен по умолчанию является абсолютным адресом.

Для получения дополнительной информации посетите: http://www.w3.org/TR/wsdl

Надеюсь это поможет

Похоже, вам нужно настроить привязки сервера в IIS, в частности значение заголовка узла, для https. В IIS 6 вы не можете сделать это через интерфейс диспетчера IIS. Вам нужно будет запустить cscript adsutil.vbs. Посмотрите, как настроить привязки серверов для заголовков узлов SSL (IIS 6.0).

Я действительно сомневаюсь, что есть проблема с IIS, я бы предложил вам удалить ссылку на веб-сервис из вашего приложения Windows и дать правильный URL-адрес веб-службы еще раз.

Кроме того, доступ к веб-сервисам по протоколу HTTPS имеет свои собственные глюки, поэтому я бы посоветовал сначала попробовать без HTTPS, заставить его работать, а затем перейти на HTTPS.

Следуя совету Гулзара, я использовал wsdl.exe для генерации класса, затем вошел в класс и изменил локальное имя сервера на доступное в Интернете имя хоста.

BRILLIANT!

Однако в будущем я не смогу просто щелкнуть правой кнопкой мыши веб-ссылку в моем проекте и выбрать ОБНОВЛЕНИЕ РЕШЕНИЯ. НО КТО ДАЕТ СЫРЮШКУЮ?

Другие вопросы по тегам