Мой полный код:
using System;
using System.IO;
using System.Net;
namespace Hello
{
public class Program
{
public static void Main()
{
WebClient web = new WebClient();
web.DownloadFile("https://images.wallpaperscraft.com/image/fractal_spiral_digital_art_130384_1280x720.jpg", "1.jpg");
web.DownloadFile("https://b8.eu.icdn.ru/a/a_l_e_x/5/61846275zQa.jpg", "2.jpg");
}
}
}
Образ "1.jpg" скачивается нормально. Но следующая ссылка вызывает это исключение:
Необработанное исключение: System.Net.WebException: основное соединение было закрыто: при отправке произошла непредвиденная ошибка. ---> System.IO.IOException: невозможно прочитать данные из транспортного соединения: существующее соединение было принудительно закрыто удаленным хостом. ---> System.Net.Sockets.SocketException: ** Существующее соединение было принудительно закрыто удаленным хостом ** в System.Net.Sockets.Socket.Receive (буфер Byte [], смещение Int32, размер Int32, SocketFlags socketFlags) ) в System.Net.Sockets.NetworkStream.Read (буфер Byte [], смещение Int32, размер Int32) --- конец трассировки стека внутренних исключений --- в System.Net.Sockets.NetworkStream.Read (буфер Byte [] , Смещение Int32, размер Int32) в System.Net.FixedSizeReader.ReadPacket (буфер Byte [], смещение Int32, число Int32) в System.Net.Security.SslState.StartReceiveBlob (буфер Byte [], AsyncProtocolRequest asyncRequest) в System.Net .Security. [] буфер, AsyncProtocolRequest asyncRequest) в System.Net.Security.SslState.ProcessAut проверка подлинности (LazyAsyncResult lazyResult) в System.Net.TlsStream.CallProcessAuthentication (состояние объекта) в System.Threading.ExecutionContext.RunInternal (ExecutionContext executeContext, обратный вызов contextCallback, состояние объекта, логический preserveSyncCreadtxt.ExextContext.ExtectionContext.ExtectionContext.ExtectionContext.ExtectionText.Contection.ExtectionText.Contection.TextEnttionText.TextEnttionTextEnttionTextEnttion) .ThisText.Text.Text.Text.Text.TextEntT. Обратный вызов ContextCallback, состояние объекта, логическое preserveSyncCtx) в System.Threading.ExecutionContext.Run (обратный вызов ExecutionContext executeContext, обратный вызов ContextCallback, состояние объекта) в System.Net.TlsStream.ProcessAuthentication (результат LazyAsyncResult) в System.Net.TlsStream [ ] буфер, смещение Int32, размер Int32) в System.Net.PooledStream.Write (буфер Byte [], смещение Int32, размер Int32) в System.Net.ConnectStream.WriteHeaders (Boolean async) --- Конец трассировки стека внутренних исключений --->
Обратите внимание, что я могу просматривать второе изображение в любом веб-браузере без ошибок; и я могу скачать его, используя любой менеджер загрузок.