Ejemplo n.º 1
0
        public async Task <IActionResult> Index(ArtistNameModel artistNameModel, int?page)
        {
            if (ModelState.IsValid)
            {
                //Create the auth object
                auth = new ClientCredentialsAuth()
                {
                    //Your client Id
                    ClientId = "6a2b2e87ffeb4fb6b9afd05314fe0eed",
                    //Your client secret UNSECURE!!
                    ClientSecret = "e18a056a9abc4a01b1d228ac4b043177",
                    //How many permissions we need?
                    Scope = Scope.UserReadPrivate,
                };
                //With this token object, we now can make calls
                Token token   = auth.DoAuth();
                var   spotify = new SpotifyWebAPI()
                {
                    TokenType   = token.TokenType,
                    AccessToken = token.AccessToken,
                    UseAuth     = true
                };

                var pageNumber = page ?? 1; // if no page was specified in the querystring, default to the first page (1)

                //SearchItem track = spotify.SearchItems("roadhouse+blues", SearchType.Album | SearchType.Playlist);
                //var track = spotify.SearchItems("roadhouse+blues", SearchType.Album | SearchType.Playlist);

                var songNames = spotify.SearchItems(artistNameModel.SongName, SearchType.Track | SearchType.Playlist);
                var artists   = spotify.SearchItems(artistNameModel.ArtistName, SearchType.Artist | SearchType.Playlist);

                if (!string.IsNullOrEmpty(artistNameModel.SongName))
                {
                    var songName = songNames.Tracks.Items.AsQueryable();
                    var onePage  = songName.ToPagedList(pageNumber, 3); // will only contain 25 products max because of the pageSize

                    //ViewData["SongJson"] =  JsonConvert.SerializeObject(songName.Tracks);
                    ViewData["Songs"] = onePage.ToList();
                }
                else if (!string.IsNullOrEmpty(artistNameModel.ArtistName))
                {
                    var artist  = artists.Artists.Items.AsQueryable();
                    var onePage = artist.ToPagedList(pageNumber, 3); // will only contain 25 products max because of the pageSize

                    // ViewData["ArtistsJson"] = JsonConvert.SerializeObject(track.Artists);
                    // ViewData["Artists"] = track.Artists.Items.ToList();

                    ViewData["Artists"] = onePage.ToList();
                }
            }



            return(View());
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> Index(ArtistNameModel artistNameModel)
        {
            if (ModelState.IsValid)
            {
                //Create the auth object
                auth = new ClientCredentialsAuth()
                {
                    //Your client Id
                    ClientId = "d465cd5175d04b038cca6f1679643396",
                    //Your client secret UNSECURE!!
                    ClientSecret = "b136e21e115b49b0bb6afd6f3560192e",
                    //How many permissions we need?
                    Scope = Scope.UserReadPrivate,
                };

                //With this token object, we now can make calls
                Token token   = auth.DoAuth();
                var   spotify = new SpotifyWebAPI()
                {
                    TokenType   = token.TokenType,
                    AccessToken = token.AccessToken,
                    UseAuth     = true
                };

                var searchArtist = spotify.SearchItems(artistNameModel.ArtistName, SpotifyAPI.Web.Enums.SearchType.Artist);

                //var albumInfo = spotify.GetAlbum("2szeSQtOcJgRhDXmTS3SIf");
                //var trackInfo = spotify.GetTrack("2szeSQtOcJgRhDXmTS3SIf");
                //var artistInfo = spotify.GetArtist("2szeSQtOcJgRhDXmTS3SIf");

                //Searches for songName
                var songName = spotify.SearchItems(artistNameModel.SongName, SpotifyAPI.Web.Enums.SearchType.Track);



                if (!string.IsNullOrEmpty(artistNameModel.SongName))
                {
                    //int pageSize = 5;
                    //int pageNumber = (page ?? 1);
                    var result = songName.Tracks;
                    ViewData["SongJson"] = JsonConvert.SerializeObject(result);
                    ViewData["Songs"]    = songName.Tracks.Items.ToList();

                    //Save to database table
                    //foreach (var song in result.Items)
                    //{
                    //    var name = song.Name;
                    //    var spot_Id = song.Id;
                    //}
                }
                else if (!string.IsNullOrEmpty(artistNameModel.ArtistName))
                {
                    //int pageSize = 5;
                    //int pageNumber = (page ?? 1);
                    var result = songName.Tracks;
                    ViewData["ArtistsJson"] = JsonConvert.SerializeObject(searchArtist.Artists);
                    ViewData["Artists"]     = searchArtist.Artists.Items.ToList();

                    //var model = searchArtist.Artists.Items.ToPagedList(pageNumber, pageSize);
                    //return View(model);
                }

                return(View());
            }

            return(View());
        }