public async Task <List <Artist> > GetSimilarArtists(string artistName) { try { var lastFmClient = new HttpClient(); var response = await lastFmClient.GetStringAsync( string.Format("http://ws.audioscrobbler.com/2.0/?method=artist.getsimilar&format=json&limit=8&api_key={0}&artist={1}", App.ApiKeyLastFm, artistName)); var artists = JsonConvert.DeserializeObject <SimilarArtistInformation>(response); if (artists == null || !artists.Similarartists.Artist.Any()) { return(null); } var similarArtists = artists.Similarartists.Artist; var artistList = new List <Artist>(); foreach (var similarArtist in similarArtists) { var artist = new Artist(); artist.MapFrom(similarArtist); artistList.Add(artist); } return(artistList); } catch { Debug.WriteLine("Error getting similar artists from this artist."); } return(null); }
public async Task<List<Artist>> GetSimilarArtists(string artistName) { try { var lastFmClient = new HttpClient(); var response = await lastFmClient.GetStringAsync( string.Format("http://ws.audioscrobbler.com/2.0/?method=artist.getsimilar&format=json&limit=8&api_key={0}&artist={1}", App.ApiKeyLastFm, artistName)); var artists = JsonConvert.DeserializeObject<SimilarArtistInformation>(response); if (artists == null || !artists.Similarartists.Artist.Any()) return null; var similarArtists = artists.Similarartists.Artist; var artistList = new List<Artist>(); foreach (var similarArtist in similarArtists) { var artist = new Artist(); artist.MapFrom(similarArtist); artistList.Add(artist); } return artistList; } catch { Debug.WriteLine("Error getting similar artists from this artist."); } return null; }
public async Task <Artist> GetArtistInfo(string artistName) { try { var lastFmClient = new HttpClient(); // Get users language/region // If their region is not support by LastFM, it won't return an artist biography. var region = new Windows.Globalization.GeographicRegion(); string url = string.Format( "http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist={1}&api_key={0}&format=json&lang={2}", App.ApiKeyLastFm, artistName, region.Code.ToLower()); var reponse = await lastFmClient.GetStringAsync(url); { var artistInfo = JsonConvert.DeserializeObject <ArtistInformation>(reponse); if (artistInfo == null) { return(null); } if (artistInfo.Artist == null) { return(null); } var artist = new Artist(); artist.MapFrom(artistInfo); return(artist); } } catch { Debug.WriteLine("Failed to get artist biography from LastFM. Returning nothing."); } return(null); }
public async Task<Artist> GetArtistInfo(string artistName) { try { var lastFmClient = new HttpClient(); // Get users language/region // If their region is not support by LastFM, it won't return an artist biography. var region = new Windows.Globalization.GeographicRegion(); string url = string.Format( "http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist={1}&api_key={0}&format=json&lang={2}", App.ApiKeyLastFm, artistName, region.Code.ToLower()); var reponse = await lastFmClient.GetStringAsync(url); { var artistInfo = JsonConvert.DeserializeObject<ArtistInformation>(reponse); if (artistInfo == null) return null; if (artistInfo.Artist == null) return null; var artist = new Artist(); artist.MapFrom(artistInfo); return artist; } } catch { Debug.WriteLine("Failed to get artist biography from LastFM. Returning nothing."); } return null; }
public async Task<Artist> GetArtistInfo(string artistName) { var music = await GetMusicEntity(artistName, new[] { Filters.Artists }); var xboxArtistItem = music.Artists.Items.FirstOrDefault(x => x.Name == artistName) ?? music.Artists.Items.FirstOrDefault(); Debug.WriteLine("XBOX Music artist found : " + xboxArtistItem.Name); var artist = new Artist(); artist.MapFrom(xboxArtistItem); return artist; }
public async Task <Artist> GetArtistInfo(string artistName) { var music = await GetMusicEntity(artistName, new[] { Filters.Artists }); var xboxArtistItem = music.Artists.Items.FirstOrDefault(x => x.Name == artistName) ?? music.Artists.Items.FirstOrDefault(); Debug.WriteLine("XBOX Music artist found : " + xboxArtistItem.Name); var artist = new Artist(); artist.MapFrom(xboxArtistItem); return(artist); }
/// <summary> /// Get similar artists from Xbox Music (NOTE: Does not work, need required permission from Microsoft). /// </summary> /// <param name="artistId">The xbox artist Id.</param> /// <returns>A list of related artists.</returns> public async Task<List<Artist>> GetSimilarArtists(string artistId) { var music = await GetMusicEntityViaArtistId(new[] { artistId }, new[] { Extras.RelatedArtists }); var xboxArtistItem = music.Artists.Items.FirstOrDefault(); if (xboxArtistItem == null) return null; Debug.WriteLine("XBOX Music artist found : " + xboxArtistItem.Name); var artistList = new List<Artist>(); foreach (var xboxArtist in xboxArtistItem.RelatedArtists.Items) { var artist = new Artist(); artist.MapFrom(xboxArtist); artistList.Add(artist); } return artistList; }
/// <summary> /// Get similar artists from Xbox Music (NOTE: Does not work, need required permission from Microsoft). /// </summary> /// <param name="artistId">The xbox artist Id.</param> /// <returns>A list of related artists.</returns> public async Task <List <Artist> > GetSimilarArtists(string artistId) { var music = await GetMusicEntityViaArtistId(new[] { artistId }, new[] { Extras.RelatedArtists }); var xboxArtistItem = music.Artists.Items.FirstOrDefault(); if (xboxArtistItem == null) { return(null); } Debug.WriteLine("XBOX Music artist found : " + xboxArtistItem.Name); var artistList = new List <Artist>(); foreach (var xboxArtist in xboxArtistItem.RelatedArtists.Items) { var artist = new Artist(); artist.MapFrom(xboxArtist); artistList.Add(artist); } return(artistList); }