インターネットから URL を介して Windows8 アプリに画像をダウンロードし、バイト [] に変換しようとしています。(BitmapImage はシリアル化できません)
残念ながら、このコードを処理しようとすると、ストリームがシークできないため、bytearray の初期化でクラッシュします。
これを達成する方法はありますか?WinRT でシーク可能なストリームがまだないことを確認しました...
private async Task<byte[]> DownloadImageFromWebsite(string url)
{
//BitmapImage result = null;
byte[] result = null;
try
{
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
WebResponse response = await request.GetResponseAsync();
Stream imageStream = response.GetResponseStream();
result = new byte[imageStream.Length];
await imageStream.ReadAsync(result, 0, (int)imageStream.Length);
response.Dispose();
}
catch (Exception ex)
{
return null;
}
return result;
}