public async Task <TrackGetInfoResponse> TrackGetInfo(LfmUser user, LfmTrack track, CancellationToken cancellationToken) { var request = new TrackGetInfoRequest { mbid = track.mbid, username = user.Username, track = track.name, artist = track.artist?.name, method = PluginConst.Methods.Track.GetInfo }; return(await Get <TrackGetInfoRequest, TrackGetInfoResponse>(request, cancellationToken)); }
/// <summary> /// Загрузит обложку альбома. /// </summary> /// <param name="track">Трек.</param> /// <param name="mbid">Идентификатор трека (если имеется).</param> private async void LoadAlbumImage(IAudioTrack track, string mbid = null) { TrackImage = new BitmapImage(new Uri("ms-appx:///Assets/Logo.scale-240.png")); TrackGetInfoRequest request = String.IsNullOrWhiteSpace(mbid) ? new TrackGetInfoRequest(track.Title, track.Artist) : new TrackGetInfoRequest(mbid); var response = await request.ExecuteAsync(); if (response.IsValid() && response.ErrorType == LFErrors.None && response.Track.Album != null && track == CurrentTrack) { if (!String.IsNullOrEmpty(response.Track.Album.MaxImage.URL)) { TrackImage = new BitmapImage(new Uri(response.Track.Album.MaxImage.URL)); } } }