В моем приложении WPF реализован процесс загрузки нескольких файлов.Мне нужно сохранить загруженные данные и возобновить загрузку, если во время загрузки происходит сбой Интернета.
Например, во время процесса загрузки, если не удается подключиться к Интернету, мне нужно подождать 5 минут, чтобы Интернет подключился и возобновил загрузку, если через 5 минут не удается восстановить подключение, запрос необходимо прервать.А также процесс должен быть асинхронным, так как я загружаю несколько файлов, и второй файл не должен начинать загрузку вторым, прежде чем будет загружен первый файл.
using (client = new WebClient())
{
try
{
client.DownloadProgressChanged += client_DownloadProgressChanged;
client.DownloadFileCompleted += client_DownloadFileCompleted(fileName);
await AsyncPlatformExtensions.DownloadFileTaskAsync(client, new Uri(sourceUri), outputDir);
}
catch(WebException exe)
{
}
catch(Exception e)
{
}
}
Я проверил несколько ссылок, как показано ниже, но ни одна из них не кажетсячтобы работать.
https://github.com/Avira/.NetFileDownloader
https://github.com/markodt/SGet
https://www.codeproject.com/Tips/307548/Resume-Suppoert-Downloading
Пожалуйста, поделитесь своими мыслями о том, как сохранить кэш загрузок и продолжить.загрузка, если Интернет повторно подключается в течение указанного времени.
С уважением,
Cheran