コード例 #1
0
        public static LmsQuestionDTO[] ParseQuestions(BBAssessmentDTO td, string jsonData)
        {
            var ret = td.questions == null
                ? new LmsQuestionDTO[] {}
                : td.questions.Select(
                q => GetParserByQuestionType(td, q.type).ParseQuestion(q))
            .ToArray();

            return(ret);
        }
コード例 #2
0
 public BlackboardCommonQuestionParser(BBAssessmentDTO td)
 {
     images = () =>
     {
         var tdImages = td.images as JToken;
         if (tdImages == null)
         {
             return(null);
         }
         var t = tdImages.ToObject <Dictionary <string, string> >();
         return(t.ToDictionary(x => x.Key, x => x.Value));
     };
 }
コード例 #3
0
        public static IBlackboardQuestionParser GetParserByQuestionType(BBAssessmentDTO td, string questionType)
        {
            switch (questionType.ToLowerInvariant())
            {
            case "fill in the blank":
                return(new BlackboardFillInTheBlanksParser(td));

            case "fill in the blank plus":
                return(new BlackboardFillInMultipleBlanksParser(td));

            case "multiple answer":
            case "multiple choice":
                return(new BlackboardMultipleChoiceParser(td));

            default:
                return(new BlackboardCommonQuestionParser(td));
            }
        }
コード例 #4
0
        public static ISakaiQuestionParser GetParserByQuestionType(BBAssessmentDTO td, string questionType)
        {
            switch (questionType.ToLowerInvariant())
            {
            case "fill in the blank":
            case "numerical":
                //return new SakaiFillInTheBlanksParser();
                //case "fill in the blank plus":
                return(new SakaiFillInMultipleBlanksParser(td));


            case "multiple choice":
            case "multiple answer":
                return(new SakaiMultipleChoiceParser(td));

            default:
                return(new SakaiCommonQuestionParser(td));
            }
        }
コード例 #5
0
        public static LmsQuestionDTO[] ParseQuestions(BBAssessmentDTO td, string jsonData)
        {
            var result = new List <LmsQuestionDTO>();

            if (td.questions == null)
            {
                return(result.ToArray());
            }
            foreach (var question in td.questions)
            {
                if (question == null)
                {
                    continue;
                }
                var questionType   = GetParserByQuestionType(td, question.type);
                var parsedQuestion = questionType.ParseQuestion(question);
                result.Add(parsedQuestion);
            }

            return(result.ToArray());
        }
コード例 #6
0
 public SakaiMultipleChoiceParser(BBAssessmentDTO td) : base(td)
 {
 }
コード例 #7
0
 public BlackboardMultipleChoiceParser(BBAssessmentDTO td) : base(td)
 {
 }
コード例 #8
0
 public SakaiFillInTheBlanksParser(BBAssessmentDTO td) : base(td)
 {
 }
コード例 #9
0
 public BlackboardFillInTheBlanksParser(BBAssessmentDTO td) : base(td)
 {
 }