/// <summary> /// 异步获取实例 /// </summary> /// <returns></returns> public static async Task <MemoryViewModel> GetInstanceAsync(MemoryModel memoryModel = null) { var memoryViewModel = new MemoryViewModel(memoryModel) { _imageViewModels = new List <ImageViewModel>() }; if (memoryModel?.ImageModels == null) { return(memoryViewModel); } foreach (var imageModel in memoryModel.ImageModels) { var imageViewModel = await ImageViewModel.GetInstanceAsync(imageModel); memoryViewModel._imageViewModels.Add(imageViewModel); } if (memoryViewModel._imageViewModels != null && memoryViewModel._imageViewModels.Count > 0) { memoryViewModel.CoverImage = memoryViewModel._imageViewModels[0].ThumbnailImage; } else { memoryViewModel.CoverImage = new BitmapImage(new Uri("ms-appx:///Assets/Gray.png")); } return(memoryViewModel); }
/// <summary> /// 按月份分类图片 /// </summary> private async Task GroupImageAsync() { // 先初始化所有图片成一个list var imageViewModels = new List <ImageViewModel>(); foreach (var imageFolderList in _imageFolderLists) { foreach (var imageModel in imageFolderList.ImageModels) { var imageViewModel = await ImageViewModel.GetInstanceAsync(imageModel); imageViewModels.Add(imageViewModel); } } ImageMonthGroups = imageViewModels .GroupBy(m => m.MonthYearDate, (key, list) => new ImageMonthGroup(key, list)) .OrderByDescending(m => m.Key.WholeDateTime.Year).ThenByDescending(m => m.Key.WholeDateTime.Month); }