public String AddSongToPlayList(String playlistName, String songName, String artist) { if (mProfile == null || mSpotify == null) { return("you need to connect to spotify before you can use this feature"); } if (playlists == null) { playlists = mSpotify.GetUserPlaylists(mProfile.Id).Items; } Models.SimplePlaylist playlist = playlists.Find(x => x.Name == playlistName); if (playlist == null) { return($"could not find playlist {playlistName}"); } Models.SearchItem search = mSpotify.SearchItems(songName, Enums.SearchType.Track); if (search.Tracks == null || search.Tracks.Items.Count == 0) { return($"could not find song {songName}"); } Models.FullTrack songData = search.Tracks.Items.Find(x => String.Equals(x.Artists[0].Name, artist, StringComparison.OrdinalIgnoreCase)); if (songData == null) { return($"could not find song {songName} by {artist}"); } Models.ErrorResponse error = mSpotify.AddPlaylistTrack(mProfile.Id, playlist.Id, songData.Uri); if (error.Error != null) { return(error.Error.Message); } return($"{songName} by {artist} was sucessfully added to {playlistName}"); }
private static void LogIfError(string q, SearchItem searchItem) { if (searchItem.HasError()) { Debug.WriteLine($"Spotify returned an error: {searchItem.Error}"); Debug.WriteLine($"Request was: {q}"); } }