/// <summary> /// Clears any other selected standards and adds the default standard. /// </summary> /// <param name="assessmentId"></param> /// <returns></returns> public QuestionRequirementCounts PersistDefaultSelectedStandard(int assessmentId) { using (var db = new CSET_Context()) { var result = db.AVAILABLE_STANDARDS.Where(x => x.Assessment_Id == assessmentId); db.AVAILABLE_STANDARDS.RemoveRange(result); var selectedStandards = GetDefaultStandardsList(); if (selectedStandards.Any()) { foreach (string std in selectedStandards) { db.AVAILABLE_STANDARDS.Add(new AVAILABLE_STANDARDS() { Assessment_Id = assessmentId, Set_Name = std, Selected = true }); } db.SaveChanges(); } } AssessmentUtil.TouchAssessment(assessmentId); // Return the numbers of active Questions and Requirements QuestionRequirementCounts counts = new QuestionRequirementCounts(); counts.QuestionCount = new QuestionsManager(assessmentId).NumberOfQuestions(); counts.RequirementCount = new RequirementsManager(assessmentId).NumberOfRequirements(); return(counts); }
/// <summary> /// Saves the list of selected Standards. /// </summary> /// <param name="selectedStandards"></param> /// <returns></returns> public QuestionRequirementCounts PersistSelectedStandards(int assessmentId, List <string> selectedStandards) { using (var db = new CSET_Context()) { var result = db.AVAILABLE_STANDARDS.Where(x => x.Assessment_Id == assessmentId); db.AVAILABLE_STANDARDS.RemoveRange(result); // If we were handed an empty list, get the default standards if (selectedStandards.Count == 1 && selectedStandards[0] == "***DEFAULT***") { selectedStandards = GetDefaultStandardsList(); } foreach (string std in selectedStandards) { db.AVAILABLE_STANDARDS.Add(new AVAILABLE_STANDARDS() { Assessment_Id = assessmentId, Set_Name = std, Selected = true }); } db.SaveChanges(); } AssessmentUtil.TouchAssessment(assessmentId); // Return the numbers of active Questions and Requirements QuestionRequirementCounts counts = new QuestionRequirementCounts(); counts.QuestionCount = new QuestionsManager(assessmentId).NumberOfQuestions(); counts.RequirementCount = new RequirementsManager(assessmentId).NumberOfRequirements(); return(counts); }