Как определить, почему ссылка на веб-сервис не может быть добавлена ​​в мой проект в VS2008? - PullRequest
6 голосов
/ 19 января 2009

У меня есть проект VS2005, который содержит несколько ссылок на веб-сервисы. Недавно проект был обновлён до VS2008, но теперь существует проблема с веб-ссылками ... возможно, потому что они, возможно, не были обновлены должным образом.

При выборе Обновить веб-ссылку я получаю следующую ошибку:

«Значение не может быть нулевым. Имя параметра: discoveryError% mexError», что очень полезно.

Затем я удалил веб-ссылку с целью ее повторного добавления ...

Открывается диалоговое окно «Добавить веб-ссылку», в котором успешно загружается информация о каждом из методов, связанных с веб-службой.

Однако я не могу добавить ссылку, поскольку кнопка для этого выделена серым цветом, и есть текстовое поле под названием «Веб-службы, найденные по этому URL:», которое содержит текст «Операция недопустима из-за текущей состояние объекта ".

Теперь, наконец, это подводит меня к моему основному вопросу ... Как тогда я могу добавить эту веб-ссылку? Или, еще лучше, как мне узнать, что недопустимо в «текущем состоянии объекта»?

Кто-нибудь имел подобный опыт в VS2008?

Ответы [ 5 ]

9 голосов
/ 12 ноября 2012

У меня была такая же проблема на VS2010. В моем случае проблема была в прокси-сервере. Я получил wsdl от внешнего URL. Мое решение: установить прокси в VS2010. Отредактируйте devenv.exe.config и добавьте <defaultProxy> в <system.net>:

<system.net>
        <defaultProxy enabled="true" useDefaultCredentials="true">
            <proxy bypassonlocal="True" proxyaddress="http://yourproxyserver:port"/>
        </defaultProxy>
</system.net>

Если прокси получен из файла .pac, вы можете опустить тег <proxy>:

   <system.net>
        <defaultProxy enabled="true" useDefaultCredentials="true">
        </defaultProxy>
   </system.net>

Старый пост о связанной проблеме:
http://fhtino.blogspot.it/2006/11/visual-studio-2005-proxy-problem-in-add.html

3 голосов
/ 19 января 2009

Наконец-то разобрался.

Я использовал WebService Studio , чтобы дать мне лучшее представление о том, что происходит. Он вернулся с сообщением об ошибке «Запрос не выполнен с HTTP-статусом 407: Требуется проверка подлинности прокси-сервера» ...., который дал мне знать, что мне пришлось установить новый сертификат безопасности ... срок действия старого истек.

Я думаю, что это ответ на этот вопрос о том, как узнать больше о том, что недопустимо в веб-сервисе.

0 голосов
/ 09 декабря 2013

Кто-то возился с моим IIS. Для службы была отключена анонимная проверка подлинности, после повторного включения это сообщение об ошибке исчезло.

0 голосов
/ 26 июня 2013

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

Итак, я загрузил WSDL на мою машину. Когда VS 2012 запрашивает URL-адрес ссылки, я ввел на своем компьютере путь к файлу WSDL. Это создало для меня веб-ссылку.

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

0 голосов
/ 04 ноября 2009

Я получил ту же ошибку: со ссылкой на обновление из Visual Studio 2008

"Value cannot be null. Parameter name: discoveryError % mexError

Я уже исправил это, проверяя список ACL в папке проекта. Определенно, мне нужно было добавить IUSR для безопасности папки ... и все!

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

...