Вызов двух локальных хостов Visual Studio с помощью WebClient - PullRequest
1 голос
/ 07 августа 2009

В моем решении два проекта ASP.NET, и я запускаю их на разных портах локального хоста, когда начинаю отладку. У меня есть общий обработчик на сайте A, который вызывается сайтом B:

String url = "http://localhost:1234/UrlOnSiteA.ashx";
WebClient client = New WebClient();
client.Credentials = CredentialCache.DefaultNetworkCredentials;
client.OpenRead(url);

Вызов OpenRead вызывает исключение с ошибкой 500, и я не знаю почему. Сообщение об ошибке:

System.Net.WebException: удаленный сервер возвратил ошибку: (500) Внутренняя ошибка сервера.

Другая информация:

  • Точка останова в самой первой строке кода обработчика не достигнута.
  • Обработчик работает правильно (и достигает точки останова), когда его URL используется в браузере.
  • Visual Studio 2008 Professional, с сайтами .NET 2.0.

Я подозреваю, что это проблема конфигурации. Есть идеи?

1 Ответ

1 голос
/ 17 сентября 2009

Сначала я бы диагностировал это, выяснив причину исключения. Посмотрите на свойство Response WebException и прочитайте возвращенный HTML. Есть какие-нибудь подсказки? (Вам может потребоваться отключить пользовательские ошибки в вашем файле web.config, чтобы увидеть фактический ответ об ошибке.)

Другой способ получить ту же информацию об ответе - это использовать Fiddler и установить прокси вашего вызова WebClient на адрес прокси Fiddler. Затем вы можете использовать Fiddler, чтобы увидеть ответ HTML.

Немного другой подход заключается в изменении параметров исключений в Visual Studio для входа в отладчик при каждом возникновении исключения WebException. Это можно сделать в диалоговом окне «Отладка ... Исключения ...».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...