public override async Task DeleteLeastPlayed(int count = 20) { var files = await RootFolder.GetFilesAsync(CommonFileQuery.OrderBySearchRank, 0, (uint)count); foreach (var file in files) { await file.DeleteAsync(StorageDeleteOption.PermanentDelete); } }
public async Task LoadSolutionAsync() { if (RootFolder is null || sdkManager.ActiveSdk is null) { return; } if (TemporarySolutionFolder is null) { var files = await RootFolder.GetFilesAsync(); if (files.FirstOrDefault(s => s.FileType == ".sln" || s.FileType.Contains("proj")) is StorageFile originalSolutionFile) { StorageFolder solutionsFolder = await GetTemporarySolutionsFolderAsync(); TemporarySolutionFolder = await RootFolder.CopyAsync(solutionsFolder, NameCollisionOption.ReplaceExisting, "bin", "obj"); } } using (await solutionLoadLock.LockAsync()) { Workspace.CloseSolution(); if (TemporarySolutionFolder != null) { var files = await TemporarySolutionFolder.GetFilesAsync(); if (files.FirstOrDefault(s => s.FileType == ".sln") is StorageFile solutionFile) { await Task.Run(() => Workspace.OpenSolutionAsync(solutionFile.Path)); } else if (files.FirstOrDefault(s => s.FileType.Contains("proj")) is StorageFile projectFile) { await Task.Run(() => Workspace.OpenProjectAsync(projectFile.Path)); } } } }