public ActionResult RemoveSubjectsForSelectedDegree(IEnumerable <Guid> subjects, string selectedDegID, string degree) { if (degree != null) { //int degID = int.Parse(degree); Guid degID = Guid.Parse(degree); Degree_Program deg = r.Degree_Program.Where(s => s.ProgramID == degID).Select(s => s).FirstOrDefault(); ViewBag.DegreeSelected = deg; ViewBag.DegreeName = deg.Degree_ProgramName; var getSubjects = r.Degree_Subject.OrderBy(s => s.ID).Where(s => s.DegreeID == degID).Select(s => s); return(View(getSubjects)); } else { if (subjects != null) { try { //int degID = int.Parse(selectedDegID); Guid degID = Guid.Parse(degree); Degree_Program getDegree = r.Degree_Program.Where(s => s.ProgramID == degID).Select(s => s).FirstOrDefault(); List <Degree_Subject> listToDelete = r.Degree_Subject.Where(s => subjects.Contains(s.SubjectID.Value) && s.DegreeID == getDegree.ProgramID).ToList(); if (CoursesModel.DeleteRelatedBPSRecordsOnDeletionOfSubjects(listToDelete)) { foreach (var item in listToDelete) { r.Degree_Subject.Remove(item); } r.SaveChanges(); ViewBag.DegreeSelected = getDegree.Degree_ProgramName; ViewBag.Message = "Succesfully Subjects Removed"; return(View(listToDelete)); } else { ViewBag.DegreeSelected = getDegree.Degree_ProgramName; ViewBag.Message = "Unable To Delete Subjects"; return(View(listToDelete)); } } catch (Exception) { throw; } } else { ViewBag.Message = "Plz Select A Degree First"; return(View()); } } }