private void ImportSelectionAddFormUIModel_BeginValidate(object sender, BeginValidateEventArgs e) { if (!this.IMPORTFILEERROR.Visible) { return; } e.Valid = false; e.InvalidFieldName = this.FILENAME.Name; e.InvalidReason = this.IMPORTFILEERROR.Value; }
private void ImportSemesterEntryScore_BeginValidate(object sender, BeginValidateEventArgs e) { _ID_SchoolYear_Semester.Clear(); _StudentCollection.Clear(); _AccessHelper = new AccessHelper(); List <StudentRecord> list = _AccessHelper.StudentHelper.GetStudents(e.List); List <List <StudentRecord> > loadPackages = new List <List <StudentRecord> >(); List <List <StudentRecord> > loadPackages2 = new List <List <StudentRecord> >(); { List <StudentRecord> package = null; int count = 0; foreach (StudentRecord var in list) { if (count == 0) { package = new List <StudentRecord>(250); count = 250; if ((loadPackages.Count & 1) == 0) { loadPackages.Add(package); } else { loadPackages2.Add(package); } } package.Add(var); count--; } } Thread threadLoadSemesterSubjectScore = new Thread(new ParameterizedThreadStart(loadSemesterEntryScore)); threadLoadSemesterSubjectScore.IsBackground = true; threadLoadSemesterSubjectScore.Start(loadPackages); Thread threadLoadSemesterSubjectScore2 = new Thread(new ParameterizedThreadStart(loadSemesterEntryScore)); threadLoadSemesterSubjectScore2.IsBackground = true; threadLoadSemesterSubjectScore2.Start(loadPackages2); threadLoadSemesterSubjectScore.Join(); threadLoadSemesterSubjectScore2.Join(); foreach (StudentRecord stu in list) { if (!_StudentCollection.ContainsKey(stu.StudentID)) { _StudentCollection.Add(stu.StudentID, stu); } } }
void ImportNewStudentsUpdateRecord_BeginValidate(object sender, BeginValidateEventArgs e) { #region 整理異動代號及類別對照 updateCodeMapping = new Dictionary <string, string>(); foreach (SHUpdateCodeMappingInfo var in SHUpdateCodeMapping.SelectAll()) { if (!updateCodeMapping.ContainsKey(var.Code)) { updateCodeMapping.Add(var.Code, var.Type); } } #endregion _NewStudentUpdateRecordInfoList = new Dictionary <string, SHUpdateRecordRecord>(); List <SHStudentRecord> students = SHStudent.SelectByIDs(e.List); foreach (SHStudentRecord stu in students) { if (!_NewStudentUpdateRecordInfoList.ContainsKey(stu.ID)) { _NewStudentUpdateRecordInfoList.Add(stu.ID, null); } else { _NewStudentUpdateRecordInfoList[stu.ID] = null; } foreach (SHUpdateRecordRecord uinfo in SHUpdateRecord.SelectByStudentID(stu.ID)) { if (uinfo.UpdateType == Type) { _NewStudentUpdateRecordInfoList[stu.ID] = uinfo; break; } } } }
protected override void OnBeginValidate(BeginValidateEventArgs e) { _ID_SchoolYear_GradeYear.Clear(); _ID_SchoolYear_Subject.Clear(); _StudentCollection.Clear(); _StudentSchoolYearSubjectCollection.Clear(); _StudentSchoolYearGradeYearCollection.Clear(); _AccessHelper = new AccessHelper(); List <StudentRecord> list = _AccessHelper.StudentHelper.GetStudents(e.List); //_AccessHelper.StudentHelper.FillSemesterSubjectScore(false, list); List <List <StudentRecord> > loadPackages = new List <List <StudentRecord> >(); List <List <StudentRecord> > loadPackages2 = new List <List <StudentRecord> >(); { List <StudentRecord> package = null; int count = 0; foreach (StudentRecord var in list) { if (count == 0) { package = new List <StudentRecord>(250); count = 250; if ((loadPackages.Count & 1) == 0) { loadPackages.Add(package); } else { loadPackages2.Add(package); } } package.Add(var); count--; } } Thread threadLoadSchoolYearSubjectScore = new Thread(new ParameterizedThreadStart(loadSubjectScore)); threadLoadSchoolYearSubjectScore.IsBackground = true; threadLoadSchoolYearSubjectScore.Start(loadPackages); Thread threadLoadSchoolYearSubjectScore2 = new Thread(new ParameterizedThreadStart(loadSubjectScore)); threadLoadSchoolYearSubjectScore2.IsBackground = true; threadLoadSchoolYearSubjectScore2.Start(loadPackages2); threadLoadSchoolYearSubjectScore.Join(); threadLoadSchoolYearSubjectScore2.Join(); foreach (StudentRecord stu in list) { if (!_StudentCollection.ContainsKey(stu.StudentID)) { _StudentCollection.Add(stu.StudentID, stu); _StudentSchoolYearSubjectCollection.Add(stu.StudentID, new Dictionary <int, List <string> >()); _StudentSchoolYearGradeYearCollection.Add(stu.StudentID, new Dictionary <int, int>()); foreach (SemesterSubjectScoreInfo semescore in stu.SemesterSubjectScoreList) { //統計此學年中學期科目成績中所包含的科目 if (!_StudentSchoolYearSubjectCollection[stu.StudentID].ContainsKey(semescore.SchoolYear)) { _StudentSchoolYearSubjectCollection[stu.StudentID].Add(semescore.SchoolYear, new List <string>()); } if (!_StudentSchoolYearSubjectCollection[stu.StudentID][semescore.SchoolYear].Contains(semescore.Subject)) { _StudentSchoolYearSubjectCollection[stu.StudentID][semescore.SchoolYear].Add(semescore.Subject); } //填入學期科目成績的成績年級資料 if (!_StudentSchoolYearGradeYearCollection[stu.StudentID].ContainsKey(semescore.SchoolYear)) { _StudentSchoolYearGradeYearCollection[stu.StudentID].Add(semescore.SchoolYear, semescore.GradeYear); } } } } }