Пример #1
0
        /// <summary>
        ///  Get the Subject from the database
        /// </summary>
        /// <param name="id"></param>
        /// <returns>A subject from database</returns>
        public Track DBGet(int id)
        {
            if (id > 0)
            {
                using (var db = new UberEversolContext())
                {
                    Track trk = (from s in db.Tracks
                                 where s.id == id
                                 select s).First();

                    //if (trk != null)
                    //{
                    //    trk.subjects = new List<Subject>();
                    //    trk.subjects = (from s in db.Subjects
                    //                         from ts in db.TracksSubjects
                    //                         where s.id == ts.subject_id
                    //                         where ts.track_id == trk.id
                    //                         select s).ToList();
                    //}

                    trk.subject = Subject.DBGet(trk.subject_id); // Load the subject from DB

                    return(trk);
                }
            }
            return(null);
        }
Пример #2
0
        /// <summary>
        /// Update the database with changes
        /// </summary>
        public int DBUpdate()
        {
            try
            {
                using (var db = new UberEversolContext())
                {
                    var result = db.Sessions.FirstOrDefault(s => s.id == this.id);
                    if (result != null)
                    {
                        result.title       = this.title;
                        result.description = this.description;
                        result.folderDir   = this.folderDir;
                        result.created     = this.created;
                        result.hit_count   = this.hit_count;

                        db.SaveChanges();
                    }
                }
                return(0);
            }
            catch (Exception e)
            {
                return(-1);
            }
        }
Пример #3
0
 /// <summary>
 /// Remove the selected subject from db
 /// </summary>
 /// <param name="id"></param>
 public void DBRemove()
 {
     using (var db = new UberEversolContext())
     {
         db.Tracks.Remove(this);
         db.SaveChanges();
     }
 }
Пример #4
0
 /// <summary>
 /// Save the object to the database
 /// </summary>
 public void DBSave()
 {
     using (var db = new UberEversolContext())
     {
         db.Sessions.Add(this);
         db.SaveChanges();
     }
 }
Пример #5
0
        /// <summary>
        /// Gets the highest last index in tracks list for this session
        /// </summary>
        /// <returns>max index</returns>
        public int getMaxTrackIndex()
        {
            int maxIndx = 0;

            using (var db = new UberEversolContext())
            {
                db.Sessions.Remove(this);
                maxIndx = db.Tracks.Where(t => t.session_id == this.id).Max(t => t.index);
            }
            return(maxIndx);
        }
Пример #6
0
        /// <summary>
        /// Increment Hit Count
        /// </summary>
        public void Hit()
        {
            this.hit_count += 1;

            using (var db = new UberEversolContext())
            {
                var result = db.Subjects.FirstOrDefault(s => s.id == this.id);
                result.hit_count += 1;
                db.SaveChanges();
            }
        }
Пример #7
0
        /// <summary>
        /// Rating Decrement
        /// </summary>
        public void RatingMinus()
        {
            this.user_rating -= 1;

            using (var db = new UberEversolContext())
            {
                var result = db.Subjects.FirstOrDefault(s => s.id == this.id);
                result.user_rating -= 1;
                db.SaveChanges();
            }
        }
Пример #8
0
 /// <summary>
 ///  Get the Subject from the database
 /// </summary>
 /// <param name="id"></param>
 /// <returns>A subject from database</returns>
 public static Subject DBGet(int id)
 {
     if (id > 0)
     {
         using (var db = new UberEversolContext())
         {
             Subject sub = (Subject)(from s in db.Subjects
                                     where s.id == id
                                     select s).First();
             return(sub);
         }
     }
     return(null);
 }
Пример #9
0
        /// <summary>
        /// Update the database with changes
        /// </summary>
        public void DBUpdate()
        {
            using (var db = new UberEversolContext())
            {
                var result = db.Subjects.FirstOrDefault(s => s.id == this.id);
                if (result != null)
                {
                    result.first_name  = this.first_name;
                    result.last_name   = this.last_name;
                    result.created     = this.created;
                    result.user_rating = this.user_rating;

                    db.SaveChanges();
                }
            }
        }
Пример #10
0
        /// <summary>
        /// Get Session record from database
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        static public Session DBGet(int id)
        {
            // Populate object with data from database
            using (var db = new UberEversolContext())
            {
                // Load the session
                Session ses = (from s in db.Sessions
                               where s.id == id
                               select s).First();

                // Load the tracks
                ses.tracks = (from t in db.Tracks
                              where t.session_id == ses.id
                              select t).ToList();

                foreach (Track t in ses.tracks)
                {
                    t.loadStructures();
                }

                return(ses);
            }
        }
Пример #11
0
        /// <summary>
        /// Update the database with changes
        /// </summary>
        public void DBUpdate()
        {
            using (var db = new UberEversolContext())
            {
                var result = db.Tracks.FirstOrDefault(t => t.id == this.id);
                if (result != null)
                {
                    result.id          = this.id;
                    result.session_id  = this.session_id;
                    result.title       = this.title;
                    result.description = this.description;
                    result.duration    = this.duration;
                    result.file_name   = this.file_name;
                    result.file_dir    = this.file_dir;
                    result.file_size   = this.file_size;

                    result.subject    = this.subject;
                    result.subject_id = this.subject_id;
                    result.keywords   = this.keywords;

                    db.SaveChanges();
                }
            }
        }