public async Task<List<Album>> GetArtistTopAlbums(string name)
{
try
{
Debug.WriteLine("Getting TopAlbums from LastFM API");
var lastFmClient = new HttpClient();
var response =
await
lastFmClient.GetStringAsync(
string.Format("http://ws.audioscrobbler.com/2.0/?method=artist.gettopalbums&limit=8&format=json&api_key={0}&artist={1}", App.ApiKeyLastFm, name));
var albums = JsonConvert.DeserializeObject<TopAlbumInformation>(response);
Debug.WriteLine("Receive TopAlbums from LastFM API");
if (albums == null) return null;
var albumList = albums.TopAlbums.Album;
var formattedAlbumList = new List<Album>();
foreach (var topAlbum in albumList)
{
var album = new Album();
album.MapFrom(topAlbum);
formattedAlbumList.Add(album);
}
return formattedAlbumList;
}
catch
{
Debug.WriteLine("Error getting top albums from artist.");
}
return null;
}
}