示例#1
0
        private bool RegisterTrueOrFalse(irQmDbContext db)
        {
            if (!ucTrueFalseAnswer1.isTrue && !ucTrueFalseAnswer1.isFalse)
            {
                lblMessage.Text      = "گزینه درست مشخص نشده است";
                lblMessage.ForeColor = Color.Red;

                return(false);
            }
            var q = new TFQuestion();

            q.Id   = Guid.NewGuid().ToString();
            q.Face = rbFace.Rtf;

            q.RegisterTime = DateTime.UtcNow;
            var tagsInBox = tagsBox1.Tags;
            var tags      = db.Tags.Select(t => t.Value).ToArray();

            foreach (var tg in tagsInBox.Where(t => !(tags.Contains(t))))
            {
                var tag = new Tag();
                tag.Value = tg;
                db.Tags.Add(tag);
            }
            foreach (var t in tagsInBox)
            {
                TagInQuestion <TFQuestion> titf = new TagInQuestion <TFQuestion>();
                titf.QuestionId = q.Id;
                titf.TagId      = t;
                db.TagInTfQuestion.Add(titf);
            }
            //var to= new TFOption();

            //to.IsTrue = ucTrueFalseAnswer1.isTrue;
            //to.Id = Guid.NewGuid().ToString();
            //var fo = new TFOption();
            //fo.IsTrue = ucTrueFalseAnswer1.isFalse;
            //fo.Id = Guid.NewGuid().ToString();
            q.TrueOption  = ucTrueFalseAnswer1.isTrue;
            q.FalseOption = ucTrueFalseAnswer1.isFalse;

            q.LessonName    = comboLesson.Text.Trim();
            q.CreatorUserId = Globals.CurrentUser.UserId;

            db.TFQuestions.Add(q);

            db.SaveChanges();


            ucTrueFalseAnswer1.New();
            ucTrueFalseAnswer1.isTrue = true;
            return(true);
        }
示例#2
0
        public TFQuestionUserControl(TFQuestion tfQuestion)
        {
            InitializeComponent();

            this.tfQuestion = tfQuestion;
            this.optionListView.ItemsSource = this.tempOptionList;

            foreach (QuestionOption option in this.tfQuestion.QuestionOptionCollection)
            {
                this.tempOptionList.Add(option.Clone() as QuestionOption);
            }

            this.richTextEditor.Text = this.tfQuestion.Content.Content;
        }
示例#3
0
        internal Question CreateQuestion(QuestionType type)
        {
            Question question = null;

            switch (type)
            {
            case QuestionType.MultiChoice:
            {
                MCQuestion mcQuestion = new MCQuestion();
                for (int i = 0; i < 4; i++)
                {
                    QuestionOption option = new QuestionOption();
                    option.Index = i;
                    mcQuestion.QuestionOptionCollection.Add(option);
                }
                question = mcQuestion;
            }
            break;

            case QuestionType.MultiResponse:
            {
                MRQuestion mrQuestion = new MRQuestion();
                for (int i = 0; i < 4; i++)
                {
                    QuestionOption option = new QuestionOption();
                    option.Index = i;
                    mrQuestion.QuestionOptionCollection.Add(option);
                }
                question = mrQuestion;
            }
            break;

            case QuestionType.Essay:
            {
                ESQuestion esQuestion = new ESQuestion();
                question = esQuestion;
            }
            break;

            case QuestionType.TrueFalse:
            {
                TFQuestion     tfQuestion = new TFQuestion();
                QuestionOption optionT    = new QuestionOption();
                optionT.Index = 0;
                QuestionOption optionF = new QuestionOption();
                optionF.Index = 1;
                tfQuestion.QuestionOptionCollection.Add(optionT);
                tfQuestion.QuestionOptionCollection.Add(optionF);
                tfQuestion.RandomOption = true;

                question = tfQuestion;
            }
            break;

            case QuestionType.Match:
            {
                MAQuestion maQuestion = new MAQuestion();
                for (int i = 0; i < 4; i++)
                {
                    MAQuestionOption option = new MAQuestionOption();
                    option.Index = i;
                    maQuestion.OptionList.Add(option);
                }
                question = maQuestion;
            }
            break;

            case QuestionType.FillInBlank:
            {
                FIBQuestion fibQuestion = new FIBQuestion();
                question = fibQuestion;
            }
            break;

            case QuestionType.Composite:
            {
                CPQuestion cpQuestion = new CPQuestion();
                question = cpQuestion;
            }
            break;
            }

            question.DifficultyLevel = 3;
            question.CreateTime      = DateTime.Now.ToUniversalTime();
            question.ModifyTime      = DateTime.Now.ToUniversalTime();

            return(question);
        }