Отправляю асинхронный запрос к серверу следующим образом:
string checkpoint = dateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss");
Int32 unixTimestamp = (Int32)(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1))).TotalSeconds;
string sha = ApiLitres.ComputeSha256Hash(unixTimestamp + ":SECRETKYEY:" + checkpoint);
string place = "****";
var values = new Dictionary<string, string>
{
{ "checkpoint", checkpoint },
{ "place", place },
{ "timestamp", unixTimestamp.ToString() },
{ "sha", sha }
};
var content = new FormUrlEncodedContent(values);
var response = await client.PostAsync("https://partnersdnld.litres.ru/get_fresh_book/", content);
var responseString = await response.Content.ReadAsStringAsync();
Если, например, делаю выборку за пару последних дней, то результат возвращается за пару секунд. Но если выборка будет за пару месяцев, то придется подождать. Вот и хочется отобразить прогресс в pgogressBar, чтобы наверняка знать сколько ждать. Результат в виде списка книг возвращается в XML.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей