Пример #1
0
        public async Task <ActionResult <ArtistDownloadModel> > GetArtistAsync(string artistId)
        {
            try
            {
                var requestedArtist = await ArtistModel.FetchArtistAsync(artistId, _spotifyAPICredentials);

                var artistAlbums = await AlbumModel.FetchArtistAlbumsAsync(requestedArtist.Id, _spotifyAPICredentials);

                var artist = MapEntityToDownloadModel <FullArtist, ArtistDownloadModel>(requestedArtist);
                artist.Albums = MapEntitiesToDownloadModels <SimpleAlbum, AlbumDownloadModel>(artistAlbums);

                return(Ok(artist));
            }
            catch (Exception err)
            {
                LogException(err);
                return(Problem("There was an error fetching the requested artist from Spotify", statusCode: 500, type: err.GetType().ToString()));
            }
        }