Exemplo n.º 1
0
        // GET api/Artist/5
        public SerializableArtist GetArtist(int id)
        {
            var artists = from artist in db.Artists.Include("Albums").Include("Songs")
                            select artist;

            Artist searchedArtist = artists.FirstOrDefault(a => a.ArtistId == id);

            if (searchedArtist == null)
            {
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            SerializableArtist artistToReturn = new SerializableArtist();
            artistToReturn.ArtistId = searchedArtist.ArtistId;
            artistToReturn.Name = searchedArtist.Name;
            artistToReturn.DateOfBirth = searchedArtist.DateOfBirth;
            artistToReturn.Country = searchedArtist.Country;

            List<string> songs = new List<string>();
            foreach (var song in searchedArtist.Songs)
            {
                songs.Add(song.Title);
            }

            artistToReturn.AddSongs(songs);

            List<string> albums = new List<string>();
            foreach (var album in searchedArtist.Albums)
            {
                albums.Add(album.Title);
            }

            artistToReturn.AddAlbums(albums);

            return artistToReturn;
        }
Exemplo n.º 2
0
        // GET api/Artist
        public IEnumerable<SerializableArtist> GetArtists()
        {
            var artists = from artist in db.Artists.Include("Albums").Include("Songs")
                          select artist;

            List<SerializableArtist> artistsToReturn = new List<SerializableArtist>();

            foreach (var artist in artists)
            {
                SerializableArtist newArtist = new SerializableArtist();
                newArtist.ArtistId = artist.ArtistId;
                newArtist.Country = artist.Country;
                newArtist.DateOfBirth = artist.DateOfBirth;
                newArtist.Name = artist.Name;
                var albums = new List<string>();
                foreach (var album in artist.Albums)
                {
                    albums.Add(album.Title);
                }

                newArtist.AddAlbums(albums);

                var songs = new List<string>();

                foreach (var song in artist.Songs)
                {
                    songs.Add(song.Title);
                }

                newArtist.AddSongs(songs);

                artistsToReturn.Add(newArtist);
            }

            return artistsToReturn;
        }