public void AddNewArtist(string name) { using (var db = new DecibaseContext()) { var newArtist = new Artist { Name = name }; if (!db.Artists.ToList().Contains(newArtist)) { db.Add(newArtist); db.SaveChanges(); } } }
public void AddNewAlbum(string title) { using (var db = new DecibaseContext()) { var newAlbum = new Album { Title = title }; if (!db.Albums.ToList().Contains(newAlbum)) { db.Add(newAlbum); db.SaveChanges(); } } }
public void AddNewTrack(string title, string albumTitle) { using (var db = new DecibaseContext()) { AddNewAlbum(albumTitle); var album = db.Albums.First(a => a.Title == albumTitle); var newTrack = new Track { Title = title, Album = album }; if (!db.Tracks.ToList().Contains(newTrack)) { db.Add(newTrack); db.SaveChanges(); } } }
public void JoinTrackToArtist(string trackTitle, string artistName) { using (var db = new DecibaseContext()) { var track = db.Tracks.First(t => t.Title == trackTitle); var artist = db.Artists.First(a => a.Name == artistName); if (db.TrackArtists.FirstOrDefault(ta => ta.TrackId == track.TrackId && ta.ArtistId == artist.ArtistId) == null) { var ta = new TrackArtist_Junction() { TrackId = track.TrackId, ArtistId = artist.ArtistId }; db.Add(ta); db.SaveChanges(); } } }