public FileDownloadResult DownloadCloudFile(string cloudfileId, string localPath, FileBlock file = null) { try { FileDownloadResult result = new FileDownloadResult(); FileBlock newFile = new FileBlock() { id = cloudfileId, }; Task task = Task.Run(() => cloudService.DownloadCloudFile(newFile, localPath)); task.Wait(); result.status = true; return(result); } catch (Exception e) { throw e; } }
private void DownloadFiles(List <FileBlock> files) { List <Task> downloadFilesTask = new List <Task>(); foreach (var file in files) { if (file.DownloadStatus == false) { downloadFilesTask.Add(Task.Run(() => { cloudService.DownloadCloudFile(file, toDownloadDirectoryPath); file.DownloadStatus = true; TransactionFile transactionFile = new TransactionFile(); transactionFile.Create(directory); })); } } Task.WaitAll(downloadFilesTask.ToArray()); }