private async void GetCachedBitmapAsync() { isWaiting = true; WaitCompleted?.Invoke(this, EventArgs.Empty); var s = mediaId.ToString(); if (PictureCache.HasPicture(s)) { var entry = PictureCache.GetPicture(s); if (Thumbnail && entry.OriginalPicture.IsThumbnailAvailable) { await entry.GetThumbnailAsync(); Image = entry.XamlThumbnailBitmap; } else { await entry.GetFullSizeAsync(); Image = entry.XamlFullSizeBitmap; } } else { Image = new BitmapImage(ResourceUriHelper.BuildUri("DefaultArtwork.png")); Log.Warning(nameof(CacheImageSource), $"No picture cache entry for {s}"); } isWaiting = false; WaitCompleted?.Invoke(this, EventArgs.Empty); }
protected IEnumerable <LinkDto> CreateLinksForCollection <T> (PagedList <T> resources, IResourceParameters parameters) where T : AuditableEntity { var links = new List <LinkDto>(); var resourceUriHelper = new ResourceUriHelper(Url); var resourceUri = pagination.CreateResourceUri (parameters, resourceUriHelper, ResourceUriType.Current); links.Add(new LinkDto(resourceUri, "self", "GET")); var pagesLinks = pagination.CreatePagesLinks(resources, parameters, resourceUriHelper); if (pagesLinks.HasPrevious) { links.Add(new LinkDto(pagesLinks.Previous, "previousPage", "GET")); } if (pagesLinks.HasNext) { links.Add(new LinkDto(pagesLinks.Next, "nextPage", "GET")); } return(links); }
private static async void MediaIdPropertyChanged(DependencyObject dependencyObject, DependencyPropertyChangedEventArgs dependencyPropertyChangedEventArgs) { var _this = (CachedImage)dependencyObject; var _value = (string)dependencyPropertyChangedEventArgs.NewValue; if (PictureCache.HasPicture(_value)) { var entry = PictureCache.GetPicture(_value); if (_this.RenderSize.Width > ThumbnailSize || _this.RenderSize.Height > ThumbnailSize) { await entry.GetFullSizeAsync(); _this.MainImage.Source = entry.XamlFullSizeBitmap; } else { if (entry.OriginalPicture.IsThumbnailAvailable) { await entry.GetThumbnailAsync(); _this.MainImage.Source = entry.XamlThumbnailBitmap; } else { await entry.GetFullSizeAsync(); _this.MainImage.Source = entry.XamlFullSizeBitmap; } } } else { _this.MainImage.Source = new BitmapImage(ResourceUriHelper.BuildUri("DefaultArtwork.png")); Log.Warning(nameof(CachedImage), $"No picture cache entry for {_value}"); } }