/// <summary> /// DealWithStudentAnswer /// </summary> private void DealWithExamResult() { string isPassed = Constants.EMPTY_STR; if (studentGetScore < FormPassValue.passCriteria) { isPassed = NOPASS; } else if (studentGetScore >= FormPassValue.passCriteria) { isPassed = PASS; } // insert student grade and isPassed ExamService.ExamServiceClient examManager = new ExamService.ExamServiceClient(); //if need to query grade randomly, should insert correct quantity examManager.InsertExamResultById(RememberUserParameter.userId, FormPassValue.examId, studentGetScore, isPassed); if (FormPassValue.isNoticeStart == 0) { // update dataGridView dataSource so that avoid student take exam again MyExam form = (this.Owner as FormExamList).GetPnlMyExam(); UserDS.SearchExamDataTable table = examManager.SearchExam(QueryExamState.SortColumn, QueryExamState.SortDirection, form.GetCurrentPage(), form.GetPageSize(), QueryExamState.KeywordState, RememberUserParameter.username); form.GetAllExam().GetDgvExamList().DataSource = DataTableUtils.ConvertDataTable(table); } FormPassValue.isNoticeStart = 0; }
//Query Pagination data private void QueryPaginationData() { paginationUtils.TotalRecord = examManager.GetExamCount(RememberUserParameter.username, QueryExamState.KeywordState); UserDS.SearchExamDataTable table = examManager.SearchExam(QueryExamState.SortColumn, QueryExamState.SortDirection, paginationUtils.CurrentPage, paginationUtils.PageSize, QueryExamState.KeywordState, RememberUserParameter.username); this.AllExam.GetDgvExamList().DataSource = DataTableUtils.ConvertDataTable(table); EditDataGridView(); }
//extract repeated code private void DynamicSort(ExamService.ExamServiceClient examManager, string SortColumn, string SortDirection) { QueryExamState.SortColumn = SortColumn; QueryExamState.SortDirection = SortDirection; UserDS.SearchExamDataTable table = examManager.SearchExam(QueryExamState.SortColumn, QueryExamState.SortDirection, ((MyExam)this.Parent).GetCurrentPage(), ((MyExam)this.Parent).GetPageSize(), QueryExamState.KeywordState, RememberUserParameter.username); this.dgvExamList.DataSource = DataTableUtils.ConvertDataTable(table); }