public ActionResult AssignLabRoom(int id)
        {
            var labGroup = _context
                           .LabGroups
                           .Include(g => g.Section)
                           .Single(s => s.Id == id);

            var rooms = _context
                        .Rooms
                        .Include(r => r.AssignedLabGroups)
                        .Include(r => r.Building)
                        .Where(r => r.IsLabRoom &&
                               r.Size >= labGroup.StudentCount &&
                               ((!r.IsSharedRoom && r.AssignedLabGroups.Count == 0) ||
                                (r.IsSharedRoom)))
                        .ToList();

            var viewModel = new AssignLabRoomViewModel
            {
                LabGroupId = id,
                LabGroup   = labGroup,
                Rooms      = rooms
            };

            return(View(viewModel));
        }
        public ActionResult AssignLabGroup(AssignLabRoomViewModel model)
        {
            if (ModelState.IsValid)
            {
                var labGroupInDb = _context
                                   .LabGroups
                                   .Include(g => g.Section)
                                   .Single(s => s.Id == model.LabGroupId);


                labGroupInDb.RoomId = model.LabRoomId;

                _context.SaveChanges();

                return(RedirectToAction("LabGroups", "Sections", new { id = labGroupInDb.Section.Id }));
            }


            return(RedirectToAction("Index"));
        }