Ejemplo n.º 1
0
        // Adds a new grade to the subject
        public void AddGrade(SubjectStudentDto student)
        {
            if (student != null)
            {
                var subject = subjectRepository.GetById(Convert.ToInt32(student.SubjectId));
                if (subject != null)
                {
                    if (subject.SubjectStudents.Any(e => e.StudentId == student.StudentId))
                    {
                        return;
                    }

                    var studentEntity = studentRepository.GetById(student.StudentId);
                    subject.SubjectStudents.Add(new SubjectStudent
                    {
                        StudentId = student.StudentId,
                        Student   = studentEntity,
                        SubjectId = student.SubjectId,
                        Grade     = student.StudentGrade
                    });
                    subjectRepository.Edit(subject);
                    unitOfWork.SaveChanges();

                    Clients.Group(student.SubjectId.ToString()).LoadGrades(getGradesFromSubject(subject));
                }
            }
        }
Ejemplo n.º 2
0
        // Updates a grade
        public void UpdateGrade(SubjectStudentDto student)
        {
            if (student != null)
            {
                var subject = subjectRepository.GetById(Convert.ToInt32(student.SubjectId));
                if (subject != null)
                {
                    subject.SubjectStudents = subject.SubjectStudents.Select(e =>
                    {
                        if (e.Id == student.Id)
                        {
                            e.Grade = student.StudentGrade;
                        }

                        return(e);
                    }).ToList();
                    subjectRepository.Edit(subject);
                    unitOfWork.SaveChanges();

                    Clients.Group(student.SubjectId.ToString()).LoadGrades(getGradesFromSubject(subject));
                }
            }
        }