WebRequestце абстрактний клас, який має заводський метод, Createякий залежно від переданої URL-адреси створює екземпляр конкретного підкласу. Вам потрібно чи хочете
HttpWebRequest httpreq = (HttpWebRequest)WebRequest.Create(strUrl);замість цього,
WebRequest req = WebRequest.Create(strUrl);залежить від ваших потреб та від того, які URL-адреси ви передаєте.
Якщо ви передаєте лише HTTP: URL-адреси, то колишній код дозволяє отримати доступ до властивостей та методів, які підклас HttpWebRequestреалізує на додаток до тих, що визначені в базовому класі WebRequest. Але якщо ви перейшли в FTP: URL, то спроба передати це HttpWebRequestбуде невдалою.
Останнє є загальним і не вийде з ладу для будь-якого з типів підтримуваних URL-адрес, але, звичайно, без введення будь-якого підкласу ви можете отримати доступ лише до властивостей та методів, які визначає базовий клас.
- через Мартіна Гоннена