Ejemplo n.º 1
0
        public Class DropClass(int classId, int userId)
        {
            var          learningCenterEntity = new TheLearningCenterReworkedEntities();
            List <Class> userClassEnrolled    = new List <Class>();

            int currentUserId = new int();

            foreach (var userItem in learningCenterEntity.Users)
            {
                if (userItem.UserId == userId)
                {
                    currentUserId = userItem.UserId;
                    foreach (var user in learningCenterEntity.Users)
                    {
                        foreach (var classItem in user.Classes)
                        {
                            if (currentUserId == user.UserId)
                            {
                                userClassEnrolled.Add(classItem);
                            }
                        }
                    }
                }
            }
            return(null);
        }
Ejemplo n.º 2
0
        public ActionResult ClassList()
        {
            var classList = new TheLearningCenterReworkedEntities().Classes.ToList();

            ViewBag.ClassList = classList;

            return(View());
        }
Ejemplo n.º 3
0
        public List <Class> currentUserClassEnrollment()
        {
            var          learningCenterEntityReworked = new TheLearningCenterReworkedEntities();
            List <Class> userClassEnrolled            = new List <Class>();

            foreach (var user in learningCenterEntityReworked.Users)
            {
                if (user.UserEmail == (string)Session["UserEmail"])
                {
                    userClassEnrolled.AddRange(user.Classes);
                }
            }

            return(userClassEnrolled);
        }
Ejemplo n.º 4
0
        public ActionResult AddEnrollInClass(string className)
        {
            var user = userRepository.Users.Where(u => u.UserEmail == (string)Session["UserEmail"]).First();

            using (var dbCtx = new TheLearningCenterReworkedEntities())
            {
                /* Get existing data from database */
                var existingStudent = dbCtx.Users.Include("Classes")
                                      .Where(s => s.UserEmail == user.UserEmail).FirstOrDefault <User>();

                /* Find Added courses in student's course collection by students'
                 * current course list (came from client in disconnected scenario) minus
                 * students' existing courses (existing data from database)  */

                Class c = new Class();
                foreach (var classItem in dbCtx.Classes)
                {
                    if (className == classItem.ClassName)
                    {
                        c = classItem;
                    }
                }

                // Add new courses

                /* Attach courses because it came from client
                 * as detached state in disconnected scenario*/
                if (dbCtx.Entry(c).State == System.Data.Entity.EntityState.Detached)
                {
                    dbCtx.Classes.Attach(c);
                }

                // Add course in existing student's course collection
                existingStudent.Classes.Add(c);

                // Save changes which will reflect in StudentCourse table only
                dbCtx.SaveChanges();
            }
            return(RedirectToAction("StudentClasses", "Home"));
        }
Ejemplo n.º 5
0
        public ActionResult DropClass(string className)
        {
            var user = userRepository.Users.Where(u => u.UserEmail == (string)Session["UserEmail"]).First();

            using (var dbCtx = new TheLearningCenterReworkedEntities())
            {
                /* Get existing data from database */
                var existingStudent = dbCtx.Users.Include("Classes")
                                      .Where(s => s.UserEmail == user.UserEmail).FirstOrDefault <User>();

                /* Find deleted courses from student's course collection by
                 * students' existing courses (existing data from database) minus students'
                 * current course list (came from client in disconnected scenario) */

                var deletedClasses = UserClassNotEnrolledIn2();

                /* Find Added courses in student's course collection by students'
                 * current course list (came from client in disconnected scenario) minus
                 * students' existing courses (existing data from database)  */

                Class c = new Class();
                foreach (var classItem in dbCtx.Classes)
                {
                    if (className == classItem.ClassName)
                    {
                        c = classItem;
                    }
                }

                /* Remove deleted courses from students' existing course collection
                 * (existing data from database)*/
                //deletedClasses.ForEach(c => existingStudent.Classes.Remove(c));   //**NOT WORKING**
                existingStudent.Classes.Remove(c);

                // Save changes which will reflect in StudentCourse table only
                dbCtx.SaveChanges();
            }
            return(RedirectToAction("StudentClasses", "Home"));
        }
Ejemplo n.º 6
0
 // Initialize and open the database connection
 static DatabaseManager()
 {
     entities = new TheLearningCenterReworkedEntities();
     entities.Database.Connection.Open();
 }