【发布时间】:2014-01-17 22:09:17
【问题描述】:
我正在尝试从 Azure Blob 存储下载多个文件,用于 WPF 中的更新程序应用程序。我正在使用 Storage Client 3.0 版并尝试使用 Async 方法。我想下载文件并跟踪每个文件的进度,但是,DownloadToStreamAsync 方法没有 IProgress 重载。另一个问题是文件不断下载(我知道这一点是因为我正在观察临时目录中的文件增长),但应用程序在开始下载后立即完成。我是 .NET 中多线程的菜鸟,因此将不胜感激。这是我的代码。
public async void Download()
{
// Save blob contents to a file.
using (FileStream fileStream = System.IO.File.OpenWrite(TempPath))
{
CloudBlockBlob blockBlob = Container.GetBlockBlobReference(BlobReference);
await blockBlob.DownloadToStreamAsync(fileStream);
}
}
public void BeginDownload()
{
Task task = new Task(Download);
task.Start();
task.Wait();
}
【问题讨论】:
标签: c# multithreading .net-4.5 async-await azure-storage