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