private async Task DeleteVersionParts(ExeVersionRowVM row) { var tmpList = row.Parts.ToList(); for (int i = 0; i < tmpList.Count; i++) { var p = tmpList[i]; row.Status = $"Deleting part {p.PartNumber} of {p.TotalParts} : “{p.FileName}” ..."; if (!(await Delete(p.nid))) { Alert.Fail($"Failed to delete {p.FileName}"); break; } row.Parts.Remove(p); } row.Status = $"All {tmpList.Count} parts deleted."; }
private async Task GetUploadedParts() { Status = "Getting previously uploaded versions ..."; var parts = await ViewsList <PartsUploadedByUser>(Executable.nid); var list = new List <ExeVersionRowVM>(); foreach (var grp in parts.GroupBy(x => x.ExeVersion)) { var row = new ExeVersionRowVM(grp); row.DeleteCmd = R1Command.Async( () => DeleteVersionParts(row), x => row.Parts.Count > 0); list.Add(row); } ExeVersions.Swap(list.OrderBy(x => x.PostDate)); Status = $"{ExeVersions.Count} uploaded versions found."; }