Скачать количество байтов с веб-ресурса

Я пытаюсь загрузить несколько байтов с веб-источника, используяHttpWebRequest (может быть любым другим способом - я пробовал WebRequest, HttpClient ...) в среде выполнения Windows Phone 8.1 - полный код:

private async void Download1000_Click(object sender, RoutedEventArgs e)
{
    Debug.WriteLine("Download Started");
    HttpWebRequest longRequest = (HttpWebRequest)WebRequest.Create(new Uri(@"http://s3.amazonaws.com/dnr/dotnetrocks_0986_enterprise_sharepoint.mp3"));
    longRequest.Headers[HttpRequestHeader.IfModifiedSince] = DateTime.UtcNow.ToString(); // prevent caching the whole file
    longRequest.AllowReadStreamBuffering = false;
    using (WebResponse myResponse = await longRequest.GetResponseAsync())
    using (Stream myStream = myResponse.GetResponseStream())
    {
        int bytesRead = 0;
        byte[] myBuffer = new byte[1000];
        Stopwatch newWatch = new Stopwatch();
        newWatch.Start();
        while ((bytesRead = await myStream.ReadAsync(myBuffer, 0, 1000)) > 0)
            Debug.WriteLine(bytesRead.ToString() + " bytes read. Elapsed time: " + newWatch.Elapsed.TotalSeconds.ToString("0.000000") + " seconds");
    }
    Debug.WriteLine("Download Finished");
}

Эта проблема - код работает, но ОС как-то мешает чтению небольшого количества байтов (даже я отключилAllowReadStreamBuffering) - кажется, что он загружает весь файл в некоторый кеш (?), а затем запускаетwhile loop, Это выглядит так:

Как видите - первое количество байтов появляется через 22 секунды - файл был загружен целиком. Наоборот, когда я использую один и тот же код (copy-paste) на Windows Phone 8.1 Silverligh и запускаю на том же устройстве - он работает так, как должен:

Есть ли способ загрузить количество байтов в WP8.1 Runtime без предварительной загрузки всего файла?

Ответы на вопрос(2)

Ваш ответ на вопрос