/// <summary> /// Adds a new Standard Dictionary or updates an existing one. Clears existing rigor level and rigor level counts before adding new data. /// </summary> /// <param name="standardID">Int value to be used as the KEY</param> /// <param name="rigorLevel">String value to be used as the Rigor Level Dictionary KEY</param> /// <param name="multiplechoiceCount">Int value to be set to the MultipleChoiceCount property of the RigorLevelCounts object</param> /// <param name="shortanswerCount">Int value to be set to the ShortAnswerCount property of the RigorLevelCounts object</param> /// <param name="essayCount">Int value to be set to the EssayCount property of the RigorLevelCounts object</param> /// <param name="truefalseCount">Int value to be set to the TrueFalseChoiceCount property of the RigorLevelCounts object</param> /// <param name="naCount">Int value to be set to the NACount property of the RigorLevelCounts object</param> public void AddLevel(int standardID, string rigorLevel, int multiplechoice3Count = 0, int multiplechoice4Count = 0, int multiplechoice5Count = 0, int shortanswerCount = 0, int essayCount = 0, int truefalseCount = 0, int blueprintCount = 0) { RigorLevelCounts newRigorCounts = new RigorLevelCounts(multiplechoice3Count, multiplechoice4Count, multiplechoice5Count, shortanswerCount, essayCount, truefalseCount, blueprintCount); //Create object to hold counts Dictionary<string, RigorLevelCounts> newRigorLevel = new Dictionary<string, RigorLevelCounts>(); //Create rigor level object newRigorLevel.Add(rigorLevel, newRigorCounts); //Add counts to rigor level if (_standardRigorLevel.ContainsKey(standardID)) { _standardRigorLevel[standardID].Remove(rigorLevel); //Remove possible existing rigor level _standardRigorLevel[standardID].Add(rigorLevel, newRigorCounts); //Add new rigor level and counts to standard } else { _standardRigorLevel.Add(standardID, newRigorLevel); //Add new standard, rigor level, and counts } //Calculate total item count and store in the StandardItemTotals dictionary //int totalItemCount = multiplechoiceCount + shortanswerCount + essayCount + truefalseCount; //AddStandardItemTotal(standardID, totalItemCount); }
private RigorLevelCounts GetRigorLevelCounts(RigorLevelCounts rigorLevelCounts, int itemCount, string questionType) { switch (questionType) { case "MultipleChoice3": return new RigorLevelCounts(itemCount, rigorLevelCounts.MultipleChoice4Count, rigorLevelCounts.MultipleChoice5Count, rigorLevelCounts.ShortAnswerCount, rigorLevelCounts.EssayCount, rigorLevelCounts.TrueFalseCount, rigorLevelCounts.BlueprintCount); case "MultipleChoice4": return new RigorLevelCounts(rigorLevelCounts.MultipleChoice3Count, itemCount, rigorLevelCounts.MultipleChoice5Count, rigorLevelCounts.ShortAnswerCount, rigorLevelCounts.EssayCount, rigorLevelCounts.TrueFalseCount, rigorLevelCounts.BlueprintCount); case "MultipleChoice5": return new RigorLevelCounts(rigorLevelCounts.MultipleChoice3Count, rigorLevelCounts.MultipleChoice4Count, itemCount, rigorLevelCounts.ShortAnswerCount, rigorLevelCounts.EssayCount, rigorLevelCounts.TrueFalseCount, rigorLevelCounts.BlueprintCount); case "ShortAnswer": return new RigorLevelCounts(rigorLevelCounts.MultipleChoice3Count, rigorLevelCounts.MultipleChoice4Count, rigorLevelCounts.MultipleChoice5Count, itemCount, rigorLevelCounts.EssayCount, rigorLevelCounts.TrueFalseCount, rigorLevelCounts.BlueprintCount); case "Essay": return new RigorLevelCounts(rigorLevelCounts.MultipleChoice3Count, rigorLevelCounts.MultipleChoice4Count, rigorLevelCounts.MultipleChoice5Count, rigorLevelCounts.ShortAnswerCount, itemCount, rigorLevelCounts.TrueFalseCount, rigorLevelCounts.BlueprintCount); case "TrueFalse": return new RigorLevelCounts(rigorLevelCounts.MultipleChoice3Count, rigorLevelCounts.MultipleChoice4Count, rigorLevelCounts.MultipleChoice5Count, rigorLevelCounts.ShortAnswerCount, rigorLevelCounts.EssayCount, itemCount, rigorLevelCounts.BlueprintCount); case "OperationalBPCount": return new RigorLevelCounts(rigorLevelCounts.MultipleChoice3Count, rigorLevelCounts.MultipleChoice4Count, rigorLevelCounts.MultipleChoice5Count, rigorLevelCounts.ShortAnswerCount, rigorLevelCounts.EssayCount, rigorLevelCounts.TrueFalseCount, itemCount); default: return rigorLevelCounts; } }
private int GetRigorLevelCount(RigorLevelCounts rigorLevelCounts, string questionType) { switch (questionType) { case "MultipleChoice3": return rigorLevelCounts.MultipleChoice3Count; case "MultipleChoice4": return rigorLevelCounts.MultipleChoice4Count; case "MultipleChoice5": return rigorLevelCounts.MultipleChoice5Count; case "ShortAnswer": return rigorLevelCounts.ShortAnswerCount; case "Essay": return rigorLevelCounts.EssayCount; case "TrueFalse": return rigorLevelCounts.TrueFalseCount; case "OperationalBPCount": return rigorLevelCounts.BlueprintCount; default: return 0; } }