Example #1
0
        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();
            }
        }
Example #2
0
 private Studio MapToStudio(StudioEntity dbStudio)
 {
     return(Mapper.Map <Studio>(dbStudio));
 }