//Insert the performer into the db, and generate a new Id for it.
        public int Insert()
        {
            try
            {
                using (MusicEntities dc = new MusicEntities())
                {
                    //Create a new Id
                    this.Id = Guid.NewGuid();

                    //Set the properties
                    tblPerformer performer = new tblPerformer
                    {
                        Id        = this.Id,
                        FirstName = this.FirstName,
                        LastName  = this.LastName,
                    };

                    //Add it to the table and save changes
                    dc.tblPerformers.Add(performer);
                    return(dc.SaveChanges());
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public void DeleteTest()
        {
            using (MusicEntities dc = new MusicEntities())
            {
                tblPerformer performer = dc.tblPerformers.FirstOrDefault(a => a.FirstName == "PL First Name Test");

                dc.tblPerformers.Remove(performer);

                dc.SaveChanges();

                tblPerformer retrievedPerformer = dc.tblPerformers.FirstOrDefault(a => a.FirstName == "PL First Name Test");

                Assert.IsNull(retrievedPerformer);
            }
        }
        public void UpdateTest()
        {
            using (MusicEntities dc = new MusicEntities())
            {
                tblPerformer performer = dc.tblPerformers.FirstOrDefault(a => a.FirstName == "PL First Name Test");

                performer.LastName = "PL Last Name Updated";

                dc.SaveChanges();

                tblPerformer retrievedPerformer = dc.tblPerformers.FirstOrDefault(a => a.LastName == "PL Last Name Updated");

                Assert.IsNotNull(retrievedPerformer);
            }
        }
        public void InsertTest()
        {
            using (MusicEntities dc = new MusicEntities())
            {
                tblPerformer performer = new tblPerformer();
                performer.Id        = Guid.NewGuid();
                performer.FirstName = "PL First Name Test";
                performer.LastName  = "PL Last Name Test";

                dc.tblPerformers.Add(performer);

                dc.SaveChanges();

                tblPerformer retrievedPerformer = dc.tblPerformers.FirstOrDefault(a => a.FirstName == "PL First Name Test");

                Assert.AreEqual(performer.Id, retrievedPerformer.Id);
            }
        }
        //Retrieve the performer from the database with this Id
        public void LoadById()
        {
            try
            {
                using (MusicEntities dc = new MusicEntities())
                {
                    //Retrieve from the db
                    tblPerformer performer = dc.tblPerformers.FirstOrDefault(p => p.Id == this.Id);

                    //Set this performer's properties
                    this.FirstName = performer.FirstName;
                    this.LastName  = performer.LastName;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public int Delete()
        {
            try
            {
                using (MusicEntities dc = new MusicEntities())
                {
                    //Retrieve it from the DB
                    tblPerformer performer = dc.tblPerformers.FirstOrDefault(p => p.Id == this.Id);

                    //Remove the performer
                    dc.tblPerformers.Remove(performer);

                    //Save the changes
                    return(dc.SaveChanges());
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public int Update()
        {
            try
            {
                using (MusicEntities dc = new MusicEntities())
                {
                    //Retrieve the record from the DB
                    tblPerformer performer = dc.tblPerformers.FirstOrDefault(c => c.Id == this.Id);

                    //Update the properties
                    performer.FirstName = this.FirstName;
                    performer.LastName  = this.LastName;

                    //Save the changes
                    return(dc.SaveChanges());
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }