public async Task <IActionResult> GetNextSongToPlay(int roomId, string songUri) { await _roomDataStore.UpdatePreviouslyPlayedSongs(roomId); await _roomDataStore.RemovePreviouslyPlayedSongsAsync(roomId); var room = await _roomDataStore.GetItemAsync(roomId.ToString()); var nextSong = room.RoomSongs .Where(s => s.Song.ServiceId != songUri) .OrderByDescending(s => s.SongRating) .ElementAt(0) .Song .ServiceId; return(Json(nextSong)); }