Example #1
0
        public static void UpdadteCourseAdons(string SelectedOptions, int StudentID)
        {
            Context db = new Context();

            //var QueryResult = db.Database.ExecuteSqlCommand("Delete from CourseAdons Where StudentID = " + StudentID);

            if (!string.IsNullOrWhiteSpace(SelectedOptions))
            {
                int[] addons = Array.ConvertAll(SelectedOptions.Split(','), int.Parse);
                List <RegistrationAdOn> lstSelectedAddon = db.RegistrationAdOn.Where(x => addons.Contains(x.AdOnID)).ToList();
                List <CourseAdon>       lstCourseAdons   = db.CourseAdon.Where(x => x.StudentID == StudentID).ToList();

                //CHECK IF NOT EXIST NOW AND EXIST IN COURSE ADDON THEN DELETE FROM COURSE ADDON
                //CHECK IF EXIST NOW AND NOT EXIST IN COURSE ADDON THEN ADD TO COURSE ADD ON

                foreach (var selectedAddon in lstSelectedAddon)
                {
                    if (lstCourseAdons.Any(x => x.AdonID == selectedAddon.AdOnID) == false)
                    {
                        CourseAdon courseAdon = new CourseAdon();
                        courseAdon.AdonID       = selectedAddon.AdOnID;
                        courseAdon.AdOnName     = selectedAddon.Name;
                        courseAdon.Price        = selectedAddon.Price;
                        courseAdon.Type         = selectedAddon.Type;
                        courseAdon.StudentID    = StudentID;
                        courseAdon.RegisterDate = DateTime.Now;
                        db.Configuration.ValidateOnSaveEnabled = false;
                        db.CourseAdon.Add(courseAdon);
                        db.SaveChanges();
                        lstCourseAdons.Add(courseAdon);
                    }
                }



                foreach (var courseAddon in lstCourseAdons)
                {
                    if (lstSelectedAddon.Any(x => x.AdOnID == courseAddon.AdonID) == false)
                    {
                        db.CourseAdon.Attach(courseAddon);
                        var entity = db.Entry(courseAddon);
                        entity.State = System.Data.Entity.EntityState.Deleted;
                        db.SaveChanges();
                    }
                }
            }
        }
Example #2
0
        public static void AssignKeycodesToCourseAddons(string SelectedOptions, string FirstName, string LastName, string Email, int ClassID, int StudentID)
        {
            Context db = new Context();

            if (!string.IsNullOrWhiteSpace(SelectedOptions))
            {
                int[] addons = Array.ConvertAll(SelectedOptions.Split(','), int.Parse);
                List <RegistrationAdOn> lstAddOns = db.RegistrationAdOn.Where(x => addons.Contains(x.AdOnID)).ToList();
                foreach (var addon in lstAddOns)
                {
                    CourseAdon courseAdon = new CourseAdon();
                    courseAdon.AdonID       = addon.AdOnID;
                    courseAdon.Price        = addon.Price;
                    courseAdon.Type         = addon.Type;
                    courseAdon.AdOnName     = addon.Name;
                    courseAdon.StudentID    = StudentID;
                    courseAdon.RegisterDate = DateTime.Now;
                    db.Configuration.ValidateOnSaveEnabled = false;
                    db.CourseAdon.Add(courseAdon);
                    db.SaveChanges();
                    int courseAdonID = courseAdon.ID;

                    if (addon.Type == "KeyCode")
                    {
                        Keycode keycode = Common.Utilities.RegisterKeycode(Convert.ToInt32(addon.KeycodeID), FirstName, LastName, Email, ClassID, addon.AdOnID);
                        if (keycode != null && keycode.KeycodeID > 0)
                        {
                            string instructions = db.KeycodeBank.Find(keycode.KeyBankID).Instructions;

                            db.Configuration.ValidateOnSaveEnabled = false;
                            var createdAdon = db.CourseAdon.Find(courseAdonID);

                            createdAdon.Keycode             = keycode.Key;
                            createdAdon.KeycodeID           = keycode.KeycodeID;
                            createdAdon.KeycodeInstructions = instructions;

                            db.CourseAdon.Attach(createdAdon);
                            var entry = db.Entry(createdAdon);
                            entry.Property(e => e.Keycode).IsModified             = true;
                            entry.Property(e => e.KeycodeID).IsModified           = true;
                            entry.Property(e => e.KeycodeInstructions).IsModified = true;
                            db.SaveChanges();
                        }
                    }
                }
            }
        }