public List <Item> GetTracks(string genre) { string token = GetToken(); HttpWebRequest request = (HttpWebRequest)WebRequest.Create( $"{BaseUrl}/1/content/music/catalog/tracks/browse?genre={genre}&maxItems=5&extra=Tracks"); request.Method = WebRequestMethods.Http.Get; request.Accept = "application/json"; request.Headers["Authorization"] = "Bearer " + token; string responseJson; using (var response = (HttpWebResponse)request.GetResponse()) using (var sr = new StreamReader(response.GetResponseStream())) responseJson = sr.ReadToEnd(); TracksRoot tracks = JsonConvert.DeserializeObject <TracksRoot>(responseJson); var genreList = (from track in tracks.Tracks.Items select track) .Take(5) .ToList(); return(genreList); }
public List <Track> GetTracks(string genreID) { string token = GetToken(); HttpWebRequest playlistRequest = (HttpWebRequest)WebRequest.Create( $"{BaseUrl}/v1/browse/categories/{genreID}/playlists?limit=1"); playlistRequest.Method = WebRequestMethods.Http.Get; playlistRequest.Accept = "application/json"; playlistRequest.Headers["Authorization"] = "Bearer " + token; string responseJson; using (var response = (HttpWebResponse)playlistRequest.GetResponse()) using (var sr = new StreamReader(response.GetResponseStream())) responseJson = sr.ReadToEnd(); PlayLists playList = JsonConvert.DeserializeObject <PlayLists>(responseJson); string tracksUrl = playList.Playlists.Items.FirstOrDefault()?.Tracks.Href; if (string.IsNullOrWhiteSpace(tracksUrl)) { return(new List <Track>()); } HttpWebRequest tracksRequest = (HttpWebRequest)WebRequest.Create(tracksUrl); tracksRequest.Method = WebRequestMethods.Http.Get; tracksRequest.Accept = "application/json"; tracksRequest.Headers["Authorization"] = "Bearer " + token; using (var response = (HttpWebResponse)tracksRequest.GetResponse()) using (var sr = new StreamReader(response.GetResponseStream())) responseJson = sr.ReadToEnd(); TracksRoot tracks = JsonConvert.DeserializeObject <TracksRoot>(responseJson); var trackList = (from item in tracks.Items select item.Track) .Take(5) .ToList(); return(trackList); }