示例#1
0
        public ActionResult AssignExercises(int id, StudentAssignExercisesViewModel viewModel)
        {
            try {
                foreach (var item in viewModel.UnassignedExercises)
                {
                    int exerciseId = int.Parse(item);

                    using (SqlConnection conn = Connection) {
                        conn.Open();
                        using (SqlCommand cmd = conn.CreateCommand()) {
                            cmd.CommandText = $@"INSERT INTO AssignedExercise(StudentId, ExerciseId)
                                                      OUTPUT INSERTED.Id
                                                      VALUES(@studentId, @exerciseId);
                                                      SELECT MAX(Id)
                                                        FROM AssignedExercise;";

                            cmd.Parameters.Add(new SqlParameter("@studentId", id));
                            cmd.Parameters.Add(new SqlParameter("@exerciseId", exerciseId));

                            cmd.ExecuteNonQuery();
                        }
                    }
                }
                return(RedirectToAction(nameof(Index)));
            } catch {
                return(View(viewModel));
            }
        }
示例#2
0
        // GET: /Students/AssignExercises/1
        public ActionResult AssignExercises(int id)
        {
            Student student = GetStudentById(id);

            if (student == null)
            {
                return(NotFound());
            }

            StudentAssignExercisesViewModel viewModel = new StudentAssignExercisesViewModel {
                Student = student,
                ExercisesNotAssignedToStudent = GetUnassignedExercises(student.Id),
                AssignedExercises             = GetAssignedExercises(student.Id),
                UnassignedExercises           = null
            };

            return(View(viewModel));
        }