private async Task GetProPlusVersions() { await Retry.BlockAsync(3, 1, async() => { var cd = new ProPlusDownloader(); var channelVersionJson = await cd.GetChannelVersionJson(); var branches = GlobalObjects.ViewModel.JsonToBranches(channelVersionJson); if (branches != null) { GlobalObjects.ViewModel.Branches = branches; } var ppDownload = new ProPlusDownloader(); foreach (var channel in GlobalObjects.ViewModel.Branches) { var latestVersion = await ppDownload.GetLatestVersionAsync(channel.Branch.ToString(), OfficeEdition.Office32Bit); channel.CurrentVersion = latestVersion; if (channel.Versions.All(v => v.Version != latestVersion)) { channel.Versions.Insert(0, new Build() { Version = latestVersion }); } } }); }