List <StudentCourseRegistration> GetStudentCourseRegistrations() { List <StudentCourseRegistration> registrationList = new List <StudentCourseRegistration>(); List <Course> courses = Controller <StudentRegistrationEntities, Course> .GetEntitiesWithIncluded("Students", "Department").ToList(); Debug.WriteLine("GetStudentCourseRegistration courses " + courses.Count); foreach (Course course in courses) { foreach (Student student in course.Students) { StudentCourseRegistration registration = new StudentCourseRegistration() { StudentID = student.StudentId, StudentLastName = student.StudentLastName, CourseNumber = course.CourseNumber, DepartmentCode = course.Department.DepartmentCode, CourseName = course.CourseName, student = student, course = course }; registrationList.Add(registration); } } return(registrationList.OrderBy(r => r.DepartmentCode).OrderBy(r => r.CourseNumber).ToList()); }
/// <summary> /// Remove selected Row /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ButtonDrop_Click(object sender, EventArgs e) { /* foreach (DataGridViewRow row in dataGridViewRegistration.SelectedRows) * { * dataGridViewRegistration.Rows.RemoveAt(row.Index); * }*/ StudentRegistrationEntities context = new StudentRegistrationEntities(); context.Students.Load(); context.Courses.Load(); context.Database.Log = (s => Debug.Write(s)); context.SaveChanges(); // get the students and courses, and include nav properties var students = context.Students.Include("Courses").ToList(); var courses = context.Courses.Include("Students").ToList(); foreach (DataGridViewRow row in dataGridViewRegistration.SelectedRows) { StudentCourseRegistration registration = row.DataBoundItem as StudentCourseRegistration; // find the student in the db Student student = students.Find(s => s.StudentId == registration.StudentID); // find the course in teh db Course course = courses.Find(c => c.CourseNumber == registration.CourseNumber && c.DepartmentId == registration.course.DepartmentId); student.Courses.Remove(course); } context.SaveChanges(); context.Dispose(); UpdateRegistration(); }
/// <summary> /// Displays the submission status. /// </summary> /// <param name="id">Assignment Identifier</param> /// <returns>The submission page view.</returns> public ActionResult Submit(int id) { User user; try { user = getCurrentUser(); } catch (Exception e) { return(RedirectToAction("Login", "Account")); } if (user.UserRoleID != 2) { return(RedirectToAction("AccessDenied", "Home")); } MultiViewModel MVM = new MultiViewModel(); Course_Assignments ca = GetCourseAssignments().Where(c => c.Course_AssignmentsID == id).First(); StudentCourseRegistration str = GetSCR().Where(s => s.CourseInstanceID == ca.CourseInstanceID && s.STUDENTID == user.UserId).First(); MVM.assignment = GetAssignmentById(ca.AssignmentID); MVM.Questions = GetQuestionsByAssignmentId(MVM.assignment.AssignmentID); MVM.Submissions = GetSubmissions().Where(s => s.StudentCourseRegistrationID == str.StudentCourseRegistrationID); return(View(MVM)); }
public void DeleteStudent(int id) { using (var model = new graderEntities()) { StudentCourseRegistration scr = model.StudentCourseRegistrations.Where(s => s.StudentCourseRegistrationID == id).First(); if (scr == null) { throw new HttpResponseException(HttpStatusCode.NotFound); } foreach (var sub in model.SUBMISSIONs.Where(sb => sb.StudentCourseRegistrationID == scr.StudentCourseRegistrationID)) { model.SUBMISSIONs.Remove(sub); } model.StudentCourseRegistrations.Remove(scr); model.SaveChanges(); } }
public ActionResult StudentCourseRegister(FormCollection formCollection) { try { StudentCourseRegistration studentCourseRegistration = new StudentCourseRegistration(); studentCourseRegistration.CourseCode = formCollection["CourseCode"]; studentCourseRegistration.RollNumber = Convert.ToInt32(formCollection["RollNumber"]); studentCourseRegistration.DegreeTitle = formCollection["DegreeTitle"]; studentCourseRegistration.Session = formCollection["Session"]; studentCourseRegistration.RegisterType = formCollection["RegisterType"]; StudentCourseRegistrationDbLayer studentCourseregistrationDbLayer = new StudentCourseRegistrationDbLayer(); studentCourseregistrationDbLayer.RegisterCourse(studentCourseRegistration.CourseCode, studentCourseRegistration.RollNumber, studentCourseRegistration.DegreeTitle, studentCourseRegistration.Session, studentCourseRegistration.RegisterType); ViewBag.SuccessMessage = "Student Registered with Course Successfully!!"; return(View()); } catch { ViewBag.ErrorMessage = "Failed..!!<br/> Course Code or Student Data is Incorrect..!!"; return(View()); } }
public ActionResult Register(User user) { string email = user.Email; bool check = false; foreach (User u in new graderEntities().Users) { if (email.ToLower().Equals(u.Email.ToLower())) { check = true; break; } } if (check == false) { using (var db = new graderEntities()) { user.UserRoleID = 2; int max = db.Users.Select(u => u.UserId).DefaultIfEmpty().Max() + 1; user.UserId = max; try { db.Users.Add(user); } catch (System.Data.SqlClient.SqlException e) { Response.Write("<script>alert('Email already exists!')</script>"); return(RedirectToAction("Register", "Account")); } foreach (Course c in db.Courses.Where(c => c.Deadline >= DateTime.Now)) { foreach (CourseInstance ci in db.CourseInstances.Where(i => i.CourseID == c.CourseID)) { DirectoryInfo dir = new DirectoryInfo(@"D:\home\site\wwwroot\Files\SCR\" + ci.CourseInstanceID); if (dir.Exists) { StreamReader read = new StreamReader(dir.GetFiles().First().FullName); List <string> left = new List <string>(); var mail = read.ReadLine(); bool change = false; while (mail != null) { if (mail.ToLower().Equals(user.Email.ToLower())) { change = true; StudentCourseRegistration scr = new StudentCourseRegistration { CourseInstanceID = ci.CourseInstanceID, STUDENTID = user.UserId }; db.StudentCourseRegistrations.Add(scr); foreach (var casgm in db.Course_Assignments.Where(ca => ca.CourseInstanceID == scr.CourseInstanceID)) { foreach (var q in db.Questions.Where(q => q.AssignmentID == casgm.AssignmentID)) { SUBMISSION sub = new SUBMISSION(); sub.StudentCourseRegistrationID = scr.StudentCourseRegistrationID; sub.GRADE = 0; sub.QuestionID = q.QuestionID; sub.TRIES = 0; sub.FILE = null; sub.SubmittedDate = null; sub.Result = null; db.SUBMISSIONs.Add(sub); } } } else { left.Add(mail); } mail = read.ReadLine(); } read.Close(); if (change) { StreamWriter write = new StreamWriter(dir.GetFiles().First().FullName); foreach (var name in left) { write.WriteLine(name); } ; write.Close(); } } } } db.SaveChanges(); } } else { ViewBag.message = "<p style='color: #d9230f'>Email already exists.</p>"; return(View(user)); } return(RedirectToAction("LogIn", "Account")); }