Это займет больше работы, но вместо использования WebClient
используйте HttpWebRequest
и установите для свойства AllowAutoRedirect
значение False
. Перенаправление затем выдаст исключение, но вы можете получить любой текст ответа (и на некоторых страницах есть текст ответа вместе с перенаправлением) из объекта ответа исключения. После получения ответа от исключения вы можете ввести еще один HttpWebRequest
для URL-адреса перенаправления (указанного в заголовке ответа Location
).
Вы могли бы быть в состоянии сделать нечто подобное с WebRequest
, если вы создадите производный объект MyWebRequest
, где вы перегружаете метод GetWebRequest
и устанавливаете свойство AllowAutoRedirect
. Я не знаю, что за исключение, если оно есть, метод DownloadData
вернется, если вы сделаете что-то подобное.
Как кто-то сказал ранее, это будет работать только для тех страниц, которые выполняют перенаправления на стороне клиента (обычно 301 или 302). Если происходит перенаправление на стороне сервера, вы об этом никогда не узнаете.