public async Task <IActionResult> CreateAssignment(AssignmentViewModel model) { if (ModelState.IsValid) { Assignment assignment = new Assignment(model); AssignmentDataService assignmentDataService = new AssignmentDataService(dbContext); assignmentDataService.AddAssignment(assignment); ClassDataService classDataService = new ClassDataService(dbContext); Class c = classDataService.GetClassById(assignment.ClassId); c.Assignments.Add(assignment); } await dbContext.SaveChangesAsync(); return(RedirectToAction("Index", "Home")); }
public async Task <IActionResult> AddSelectedAssignment(int classId, int assignmentId) { AssignmentDataService assignmentDataService = new AssignmentDataService(dbContext); var assignment = assignmentDataService.GetAssignmentById(assignmentId); var newAssignment = new Assignment { Submissions = new List <Submission>(), Name = assignment.Name, StartDate = assignment.StartDate, EndDate = assignment.EndDate, Description = assignment.Description, MemoryLimit = assignment.MemoryLimit, TimeLimit = assignment.TimeLimit, Languages = assignment.Languages, ClassId = classId, }; assignmentDataService.AddAssignment(newAssignment); foreach (var test in assignment.TestCases) { var testCase = new TestCaseSpecification(test); testCase.AssignmentId = newAssignment.Id; newAssignment.TestCases.Add(testCase); } ClassDataService classDataService = new ClassDataService(dbContext); var c = classDataService.GetClassById(classId); c.Assignments.Add(newAssignment); await dbContext.SaveChangesAsync(); return(RedirectToAction("Index", "Home")); }