public void Save(Studio studio) { using (var db = GetDbContext()) { StudioEntity dbStudio; var timeStamp = DateTime.UtcNow; if (studio.Id != Guid.Empty) { dbStudio = db.Studios.SingleOrDefault(g => g.Id == studio.Id); if (dbStudio == null) { throw new Exception("Studio could not be found"); } } else { dbStudio = new StudioEntity() { Id = Guid.NewGuid(), CreatedBy = studio.CreatedBy, CreatedOn = timeStamp, }; studio.Id = dbStudio.Id; studio.CreatedOn = dbStudio.CreatedOn; db.Studios.Add(dbStudio); } dbStudio.Name = studio.Name; dbStudio.CodecSipAddress = studio.CodecSipAddress; dbStudio.CameraAddress = studio.CameraAddress; dbStudio.CameraActive = studio.CameraActive; dbStudio.CameraUsername = studio.CameraUsername; dbStudio.CameraPassword = studio.CameraPassword; dbStudio.CameraVideoUrl = studio.CameraVideoUrl; dbStudio.CameraImageUrl = studio.CameraImageUrl; dbStudio.CameraPlayAudioUrl = studio.CameraPlayAudioUrl; dbStudio.AudioClipNames = studio.AudioClipNames; dbStudio.InfoText = studio.InfoText; dbStudio.MoreInfoUrl = studio.MoreInfoUrl; dbStudio.NrOfAudioInputs = studio.NrOfAudioInputs; dbStudio.AudioInputNames = studio.AudioInputNames; dbStudio.AudioInputDefaultGain = studio.AudioInputDefaultGain; dbStudio.NrOfGpos = studio.NrOfGpos; dbStudio.GpoNames = studio.GpoNames; dbStudio.InactivityTimeout = studio.InactivityTimeout; dbStudio.UpdatedBy = studio.UpdatedBy; studio.UpdatedOn = dbStudio.UpdatedOn = timeStamp; db.SaveChanges(); } }
private Studio MapToStudio(StudioEntity dbStudio) { return(Mapper.Map <Studio>(dbStudio)); }