public IHttpActionResult Create(SongModel song)
        {
            if (!this.ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            var artist = this.data.Artists.All().First(a => a.Id == song.ArtistId);

            if (artist == null)
            {
                return BadRequest("Such artist does not exist!");
            }

            var newSong = new Song
            {
                Title = song.Title,
                ArtistId = song.ArtistId
            };

            this.data.Songs.Add(newSong);
            this.data.SaveChanges();

            song.Id = newSong.Id;

            return Ok(song);
        }
        public IHttpActionResult Update(int id, SongModel song)
        {
            if (!this.ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            var existingSong = this.data.Songs.All().First(s => s.Id == id);
            if (existingSong == null)
            {
                return BadRequest("Such song does not exist!");
            }

            existingSong.Title = song.Title;
            existingSong.ArtistId = song.ArtistId;
            this.data.SaveChanges();

            song.Id = id;

            return Ok(song);
        }