Работаю над обновлением файлов, список которых получаю по ссылке в json формате. При загрузке приложения, я получаю callback, откуда составляю список загружаемых файлов и передаю в другой класс. Проблема заключается в том, что не все файлы скачиваются, отловить не получается, не знаю, в чем проблема.
В этом классе, в методе updateGameClient, я получаю массив и отправляю его в Browser.Load()
public class CallbackObjectSaveSettings
{
private MainWindow _mainWindow;
public CallbackObjectSaveSettings(MainWindow mainWindow)
{
_mainWindow = mainWindow;
}
public async void updateGameClient()
{
UpdateSet upd = UpdateSet.FromJson(_web.DownloadString("http://127.0.0.1/update/1"));
var updList = upd.Update;
for (int i = 0; i < updList.Length; i++)
{
_mainWindow.Dispatcher.Invoke(() => _mainWindow.Browser.Load(updList[i].fileName));
}
}
}
Тут пытаюсь обработать.. ПрогрессБар реагирует на каждый файл по отдельности, и скачиваются максимум 2 файла
class MyDownloadHandler : IDownloadHandler
{
private ProgressBar _bar;
public MyDownloadHandler(ProgressBar bar)
{
_bar = bar;
}
public void OnBeforeDownload(IBrowser browser, DownloadItem downloadItem, IBeforeDownloadCallback callback)
{
if (!callback.IsDisposed)
{
using (callback)
{
var downFolder = Path.Combine(AppDomain.CurrentDomain.BaseDirectory + "upd\\", downloadItem.SuggestedFileName);
callback.Continue(downFolder, false);
Console.WriteLine("browser " + browser + ", downloadItem: " + downloadItem.Id + " suggestedName: " + downFolder);
}
}
}
public void OnDownloadUpdated(IBrowser browser, DownloadItem downloadItem, IDownloadItemCallback callback)
{
_bar.Dispatcher.Invoke(new Action(() =>
{
Console.WriteLine("Download {0}/{1} bytes", downloadItem.ReceivedBytes, downloadItem.TotalBytes);
_bar.Maximum = downloadItem.TotalBytes;
_bar.Value = downloadItem.ReceivedBytes;
}));
}
}
Подскажите, пожалуйста, в чем может быть причина? Спасибо!
Переписала метод, создала очередь скачивания файла. Спасибо за помощь!
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Объясните пожалуйста на пальцахУ меня есть маска в двоичном представлении 0000 0100, я хочу во время когда пользователь вводит число, например...
Не могу разобраться как добавить мьютекс,в форме есть 6 pictureBox-ов, каждые t секунды меняет цвет первой части, в ответ на изменение цвета в первой...
Слышал что не рекомендуется использовать оператор new где попалоЕго необходимо изолировать в отдельном классе который будет отвечать за создания...