private void gradeSection(int sectionCode, Bitmap stretched, Sectionizer testSections, ExamSpecifics exam, double avRadius) { if (sectionCode == 0) { LineScannerSC prelines = new LineScannerSC(testSections.studentCondition, avRadius); StudentCondition section1 = new StudentCondition(prelines.lineX, prelines.lineY, stretched, exam, avRadius); section1.scoreSection(stretched); // should be in a worker thread scannedScores[sectionCode] = (section1); } if (sectionCode == 1) { LineScannerMC prelines = new LineScannerMC(testSections.multipleChoice, avRadius); Multiple_Choice section1 = new Multiple_Choice(prelines.lineX, prelines.lineY, stretched, exam, avRadius); section1.scoreSection(stretched); // should be in a worker thread scannedScores[sectionCode] = (section1); } else if (sectionCode == 2) { LineScannerPairing prelines = new LineScannerPairing(testSections.pairing, avRadius); Pairing section2 = new Pairing(prelines.lineX, prelines.lineY, stretched, exam, avRadius); section2.scoreSection(stretched); // should be in a worker thread scannedScores[sectionCode] = (section2); } else if (sectionCode == 3) { LineScannerTF prelines = new LineScannerTF(testSections.trueFalse, avRadius); True_False section3 = new True_False(prelines.lineX, prelines.lineY, stretched, exam, avRadius); section3.scoreSection(stretched); // should be in a worker thread scannedScores[sectionCode] = (section3); } else if (sectionCode == 4) { LineScannerCompletion prelines = new LineScannerCompletion(testSections.completion, avRadius); Completion section4 = new Completion(prelines.lineX, prelines.lineY, stretched, exam, avRadius); section4.scoreSection(stretched); // should be in a worker thread scannedScores[sectionCode] = (section4); } else if (sectionCode == 5) { LineScannerSubjective prelines = new LineScannerSubjective(testSections.subjective, avRadius); Subjective section4 = new Subjective(prelines.lineX, prelines.lineY, stretched, exam, avRadius); section4.scoreSection(stretched); // should be in a worker thread scannedScores[sectionCode] = (section4); } }
private void UpdateView(Question nextQues, bool isShownAnswerkey) { //throw new NotImplementedException(); if (_view is V_MC_Vong1) { V_MC_Vong1 myView = _view as V_MC_Vong1; if (nextQues == null)// het cau hoi vong nay { return; //// /// } if (nextQues is Compound) { Compound ques = nextQues as Compound; myView.QuestionText = ques.QuestionContent + "\nA." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; } else if (nextQues is Multiple_Choice) { Multiple_Choice ques = nextQues as Multiple_Choice; myView.QuestionText = ques.QuestionContent + "\nA." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; } else if (nextQues is Fill_In) { Fill_In ques = nextQues as Fill_In; myView.QuestionText = ques.QuestionContent.Replace("NNN", "..."); } else { myView.QuestionText = nextQues.QuestionContent; } myView.QuestionNumText = nextQues.STT; try { myView.AnswerKey = nextQues.AnswerKey; } catch { } } }
private void UpdateView(Question nextQues) { //throw new NotImplementedException(); if (_view is V_IT_Vong1_Thi) { V_IT_Vong1_Thi myView = _view as V_IT_Vong1_Thi; if (nextQues == null)// het cau hoi vong nay -- dk khác có vấn đề đây { try { (new BLL()).MakeTeamDone(_teamId); Close(); } catch { } return; //// /// } if (nextQues is Compound) { Compound ques = nextQues as Compound; myView.QuestionText = ques.QuestionContent + "\nA." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; } else if (nextQues is Multiple_Choice) { Multiple_Choice ques = nextQues as Multiple_Choice; myView.QuestionText = ques.QuestionContent + "\nA." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; } else if (nextQues is Fill_In) { Fill_In ques = nextQues as Fill_In; myView.QuestionText = ques.QuestionContent.Replace("NNN", "..."); } else { myView.QuestionText = nextQues.QuestionContent; } myView.AnswerKey = nextQues.AnswerKey; myView.QuestionNumText = nextQues.STT; } }
public DAL_Question(Question question) { if (question is Multiple_Choice) { Multiple_Choice myMC = (Multiple_Choice)question; Type = "mc"; JsonQuestion json = JsonQuestion.getJsonQuestion(myMC.QuestionContent, myMC.ChoiceA, myMC.ChoiceB, myMC.ChoiceC, myMC.ChoiceD); QuestionContent = Newtonsoft.Json.JsonConvert.SerializeObject(json); } else if (question is Compound) { Compound myCP = (Compound)question; Type = "cp"; JsonQuestion json = JsonQuestion.getJsonQuestion(myCP.QuestionContent, myCP.ChoiceA, myCP.ChoiceB, myCP.ChoiceC, myCP.ChoiceD); QuestionContent = Newtonsoft.Json.JsonConvert.SerializeObject(json); } else if (question is Fill_In) { Fill_In myFi = (Fill_In)question; Type = "fi"; JsonQuestion json = JsonQuestion.getJsonQuestion(myFi.QuestionContent); QuestionContent = JsonConvert.SerializeObject(json); } else if (question is Fast) { Fast myFa = (Fast)question; Type = "fs"; JsonQuestion json = JsonQuestion.getJsonQuestion(myFa.QuestionContent); QuestionContent = JsonConvert.SerializeObject(json); } else if (question is True_False) { True_False myTf = (True_False)question; Type = "tf"; JsonQuestion json = JsonQuestion.getJsonQuestion(myTf.QuestionContent); QuestionContent = JsonConvert.SerializeObject(json); } AnswerKey = question.AnswerKey; ImageBase64String = question.Image64String; }
private void UpdateView(Question nextQues, bool isShownAnswerkey) { //throw new NotImplementedException(); if (_view is V_Vong1_Thi) { V_Vong1_Thi myView = _view as V_Vong1_Thi; if (nextQues == null)// het cau hoi vong nay { return; //// /// } if (nextQues is Compound) { Compound ques = nextQues as Compound; myView.QuestionText = ques.QuestionContent + "\nA." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; } else if (nextQues is Multiple_Choice) { Multiple_Choice ques = nextQues as Multiple_Choice; myView.QuestionText = ques.QuestionContent + "\nA." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; } else if (nextQues is Fill_In) { Fill_In ques = nextQues as Fill_In; myView.QuestionText = ques.QuestionContent.Replace("NNN", "..."); } else { myView.QuestionText = nextQues.QuestionContent; } myView.QuestionNumText = nextQues.STT; if (isShownAnswerkey) { try { myView.AnswerKey = _preQuestion.AnswerKey; } catch { } _tmrCheckCauhoi.Stop(); Timer tmrDung = new Timer(); tmrDung.Enabled = true; // if (myView.AnswerKey.Length < 10) { tmrDung.Interval = 1000; } else { tmrDung.Interval = 2000; } tmrDung.Start(); tmrDung.Tick += delegate(object send, EventArgs ev) { _tmrCheckCauhoi.Start(); myView.AnswerKey = ""; tmrDung.Stop(); tmrDung.Dispose(); }; } else { myView.AnswerKey = ""; } } }
public Question GetQuestion(string questionId) { SqlDataReader reader = null; Question question = null; try { SqlCommand cmd = new SqlCommand(); cmd.CommandText = "exec GetQuetion @questionId='" + questionId + "'"; cmd.Connection = connection; // //List<Model.Team> teamS = new List<Model.Team>(); // reader = cmd.ExecuteReader(); if (reader.Read()) { question = Question.CreateNewQuestion(reader.GetString(1)); //string teamID = reader.GetString(0); //string teamName = reader.GetString(1); //int score = reader.GetInt32(2); //string round1State = reader.GetString(3); //string round2State = reader.GetString(4); //string round3State = reader.GetString(5); //DateTime dateTime = reader.GetDateTime(6); // //team = new Model.Team(); //team.ID = teamID; //team.Name = teamName; //team.Round1State = round1State; //team.Round2State = round2State; //team.Round3State = round3State; //team.LastModified = dateTime; //// //teamS.Add(team); question.Id = questionId; question.QuestionContent = reader.GetString(2); question.AnswerKey = reader.GetString(7); question.Image64String = reader.GetString(8); if (!reader.IsDBNull(9)) { question.ImageRelativePath = reader.GetString(9); } // if (question is Multiple_Choice) { Multiple_Choice myMC = (Multiple_Choice)question; myMC.ChoiceA = reader.GetString(3); myMC.ChoiceB = reader.GetString(4); myMC.ChoiceC = reader.GetString(5); myMC.ChoiceD = reader.GetString(6); } else if (question is Compound) { Compound myCp = (Compound)question; myCp.ChoiceA = reader.GetString(3); myCp.ChoiceB = reader.GetString(4); myCp.ChoiceC = reader.GetString(5); myCp.ChoiceD = reader.GetString(6); } } // reader.Close(); connection.Close(); return(question); } catch (Exception e) { reader.Close(); connection.Close(); return(null); } }
public Result ImportExcelFile(string path) { if (!KiemTraCuPhapFile(path)) { throw new Exception("Loi Cu Phap File"); } List <Question> myGottenQuestions = new List <Question>(); List <string> myCannotAddQuestionList = new List <string>(); // nhận đối tượng rỗng Application myApp = null; Workbooks myBooks = null; Workbook myBook = null; Sheets mySheets = null; Worksheet mySheet = null; try { //bool kqCheck = false; // nạp dữ liệu lên myApp = new Application(); myBooks = myApp.Workbooks; myBook = myBooks.Open(path); mySheets = myBook.Worksheets; mySheet = (Worksheet)mySheets[1]; var cells = mySheet.Cells; var range = cells.SpecialCells(XlCellType.xlCellTypeLastCell); // kiểm tra dữ liệu int lastRow = range.Row; int lastColumn = range.Column; var mangHeaderChuan = new string[10] { "STT", "Question Type", "Score", "QuestionContent", "Choice A", "Choice B", "Choice C", "Choice D", "Anser Key", "Image Path" }; int i = 4; int colToCheck = mangHeaderChuan.Length; for (i = 2; i <= lastRow; i++) { string type = mySheet.Cells[i, 2].Value2; Question myQuestion = Question.CreateNewQuestion(type); if (myQuestion != null) { myQuestion.Score = (int)mySheet.Cells[i, 3].Value2; myQuestion.QuestionContent = (string)mySheet.Cells[i, 4].Value2; myQuestion.AnswerKey = mySheet.Cells[i, 9].Value2 + ""; myQuestion.Image64String = GetBase64StringFromPath(GetThisFolderPath(path) + "\\" + mySheet.Cells[i, 10].Value2); myQuestion.ImageRelativePath = mySheet.Cells[i, 10].Value2; if (myQuestion is Multiple_Choice) { Multiple_Choice myMultipleChoiceQuestion = (Multiple_Choice)myQuestion; myMultipleChoiceQuestion.ChoiceA = mySheet.Cells[i, 5].Value2; myMultipleChoiceQuestion.ChoiceB = mySheet.Cells[i, 6].Value2; myMultipleChoiceQuestion.ChoiceC = mySheet.Cells[i, 7].Value2; myMultipleChoiceQuestion.ChoiceD = mySheet.Cells[i, 8].Value2; } if (myQuestion is Compound) { Compound myCompoundQuesion = (Compound)myQuestion; myCompoundQuesion.ChoiceA = mySheet.Cells[i, 5].Value2; myCompoundQuesion.ChoiceB = mySheet.Cells[i, 6].Value2; myCompoundQuesion.ChoiceC = mySheet.Cells[i, 7].Value2; myCompoundQuesion.ChoiceD = mySheet.Cells[i, 8].Value2; } myGottenQuestions.Add(myQuestion); } else { myCannotAddQuestionList.Add(i.ToString()); } } if (i == lastColumn + 1) { //kqCheck = true; } //object MissingTypeLocal = System.Reflection.Missing.Value; //myBook.Close(true, MissingTypeLocal, MissingTypeLocal); //myBooks.Close(); //myApp.Quit(); // /* * string type = mySheet.Cells[i, 2].Value2; * Question myQuestion = Question.CreateNewQuestion(type); * if (myQuestion != null) * { * myQuestion.Score = (int)mySheet.Cells[i, 3].Value2; * myQuestion.QuestionContent = (string)mySheet.Cells[i, 4].Value2; * myQuestion.AnswerKey = mySheet.Cells[i, 9].Value2 + ""; * if (myQuestion is Multiple_Choice) * { * Multiple_Choice myMultipleChoiceQuestion = (Multiple_Choice)myQuestion; * myMultipleChoiceQuestion.ChoiceA = mySheet.Cells[i, 5].Value2; * myMultipleChoiceQuestion.ChoiceB = mySheet.Cells[i, 6].Value2; * myMultipleChoiceQuestion.ChoiceC = mySheet.Cells[i, 7].Value2; * myMultipleChoiceQuestion.ChoiceD = mySheet.Cells[i, 8].Value2; * } * if (myQuestion is Compound) * { * Compound myCompoundQuesion = (Compound)myQuestion; * myCompoundQuesion.ChoiceA = mySheet.Cells[i, 5].Value2; * myCompoundQuesion.ChoiceB = mySheet.Cells[i, 6].Value2; * myCompoundQuesion.ChoiceC = mySheet.Cells[i, 7].Value2; * myCompoundQuesion.ChoiceD = mySheet.Cells[i, 8].Value2; * } * myGottenQuestions.Add(myQuestion); * } * else * myCannotAddQuestionList.Add(i.ToString()); */ object MissingTypeLocal = System.Reflection.Missing.Value; myBook.Close(true, MissingTypeLocal, MissingTypeLocal); myBooks.Close(); myApp.Quit(); releaseObject(range); releaseObject(cells); releaseObject(mySheet); releaseObject(mySheets); releaseObject(myBook); releaseObject(myBooks); releaseObject(myApp); } catch { } // trả bộ nhớ lại // //foreach(var Cell in mySheet.Cells) //{ // Marshal.ReleaseComObject(Cell); //} // return(new Result { GottenQuestions = myGottenQuestions, NotGottenQuestion = myCannotAddQuestionList }); // }
private void UpdateView(Question nextQues, bool isShownAnswerkey) { //throw new NotImplementedException(); if (_view is V_Led_Vong1) { V_Led_Vong1 myView = _view as V_Led_Vong1; if (nextQues == null)// het cau hoi vong nay { return; //// /// } if (nextQues.ImageRelativePath == null || nextQues.ImageRelativePath == "") { //throw new NotImplementedException();' if (nextQues is Compound) { Compound ques = nextQues as Compound; myView.QuestionText = ques.QuestionContent; myView.QuestionMaybeAnswer = "A." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; } else if (nextQues is Multiple_Choice) { Multiple_Choice ques = nextQues as Multiple_Choice; myView.QuestionText = ques.QuestionContent; myView.QuestionMaybeAnswer = "A." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; myView.ShowABCD = true; } else if (nextQues is Fill_In) { Fill_In ques = nextQues as Fill_In; myView.QuestionText = ques.QuestionContent.Replace("NNN", "..."); myView.ShowABCD = false; } else { myView.QuestionText = nextQues.QuestionContent; myView.ShowABCD = false; } myView.ShowPic = false; myView.QuestionNumText = nextQues.STT; //if (isShownAnswerkey) //{ // try // { // myView.AnswerKey = _preQuestion.AnswerKey; // } // catch // { // } // _tmrCheckCauhoi.Stop(); // Timer tmrDung = new Timer(); // tmrDung.Enabled = true; // // // if (myView.AnswerKey.Length < 10) // tmrDung.Interval = 1000; // else // tmrDung.Interval = 2000; // tmrDung.Start(); // tmrDung.Tick += delegate (object send, EventArgs ev) // { // // // V_Load(null, EventArgs.Empty); // //_tmrCheckCauhoi.Start(); // myView.AnswerKey = ""; // tmrDung.Stop(); // tmrDung.Dispose(); // }; //} //else //{ // myView.AnswerKey = ""; //} myView.RelocatingAndResizingControls("nohinh"); } else { try { myView.Pic = Image.FromFile(Application.StartupPath + nextQues.ImageRelativePath); } finally { if (nextQues is Compound) { Compound ques = nextQues as Compound; myView.QuestionText = ques.QuestionContent; myView.QuestionMaybeAnswer = "A." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; } else if (nextQues is Multiple_Choice) { Multiple_Choice ques = nextQues as Multiple_Choice; myView.QuestionText = ques.QuestionContent; myView.QuestionMaybeAnswer = "A." + ques.ChoiceA + "\nB." + ques.ChoiceB + "\nC." + ques.ChoiceC + "\nD." + ques.ChoiceD; myView.ShowABCD = true; } else if (nextQues is Fill_In) { Fill_In ques = nextQues as Fill_In; myView.QuestionText = ques.QuestionContent.Replace("NNN", "..."); myView.ShowABCD = false; } else { myView.QuestionText = nextQues.QuestionContent; myView.ShowABCD = false; } myView.ShowPic = true; myView.QuestionNumText = nextQues.STT; myView.RelocatingAndResizingControls("hinh"); } } } }