/// <summary>Modifies a passed <see cref="Student"/> on disk.</summary> /// <param name="oldStudent">Old <see cref="Student"/></param> /// <param name="newStudent">New <see cref="Student"/></param> public static void ModifyStudent(Student oldStudent, Student newStudent) { if (oldStudent.Id != newStudent.Id) { JSONInteraction.DeleteStudent(oldStudent); } JSONInteraction.WriteStudent(newStudent); AllStudents.Replace <Student>(oldStudent, newStudent); }
/// <summary>Deletes a <see cref="Student"/>.</summary> /// <param name="deleteStudent"><see cref="Student"/> to be deleted</param> public static void DeleteStudent(Student deleteStudent) { JSONInteraction.DeleteStudent(deleteStudent); foreach (SchoolClass cls in AllClasses) { if (cls.Students.Any(std => std.Equals(deleteStudent.Id, StringComparison.OrdinalIgnoreCase))) { cls.Students.RemoveAll(std => std.Equals(deleteStudent.Id, StringComparison.OrdinalIgnoreCase)); foreach (Assignment assignment in cls.Gradebook) { assignment.Grades.Remove(deleteStudent.Id); } JSONInteraction.WriteClass(cls); } } AllStudents.Remove(deleteStudent); }