private void Level_Select_Load(object sender, EventArgs e) { int totalWeight = 0; //If connected to database can load and import in to data structures. //Can load from database and save in to xml using xml textwriter //Then load from XML if (loadState) { // DATABASE LOAD CODE //try //{ // SqlConnection myConnection = new SqlConnection("Integrated Security=true;" + // "password=password;server=.\\SQLEXPRESS;" + // "Trusted_Connection=yes;" + // "database=XML; " + // "connection timeout=30"); // myConnection.Open(); // SqlDataAdapter Modules4 = new SqlDataAdapter("Select * From dbo.Course where Module_Level = 4", myConnection); // DataSet course4 = new DataSet("Course"); // Modules4.FillSchema(course4, SchemaType.Source, "Course"); // Modules4.Fill(course4, "Course"); // DataTable tblCourse; // tblCourse = course4.Tables["Course"]; // int maxWeight = 0; // foreach (DataRow drCurrent in tblCourse.Rows) // { // Module loadModule = new Module(); // Assessment loadAssessment = new Assessment(); // this.courseNameLbl.Text = drCurrent["Course_Name"].ToString(); // this.courseCodeLbl.Text = drCurrent["Course_Code"].ToString(); // loadModule.Level = int.Parse(drCurrent["Module_Level"].ToString()); // loadModule.ModuleName = drCurrent["Module_Name"].ToString(); // loadModule.ModuleCode = drCurrent["Module_Code"].ToString(); // loadModule.ModuleCredits = int.Parse(drCurrent["Module_Credits"].ToString()); // loadAssessment.AssessmentName = drCurrent["Assessment_Name"].ToString(); // maxWeight = maxWeight + int.Parse(drCurrent["Assessment_Weighting"].ToString()); // loadAssessment.AssessmentWeighting = int.Parse(drCurrent["Assessment_Weighting"].ToString()); // loadAssessment.AssessmentMark = int.Parse(drCurrent["Assessment_Mark"].ToString()); // assessmentList.Add(loadAssessment); // if (maxWeight == 100) // { // List<Assessment> assessList2 = new List<Assessment>(); // assessList2.AddRange(assessmentList); // loadModule.UpdateList(assessList2); // // moduleListlvl4.Add(loadModule); // assessmentList.Clear(); // maxWeight = 0; // } // } // SqlDataAdapter Modules5 = new SqlDataAdapter("Select * From dbo.Course where Module_Level = 5", myConnection); // DataSet course5 = new DataSet("Course2"); // Modules5.FillSchema(course5, SchemaType.Source, "Course2"); // Modules5.Fill(course5, "Course2"); // DataTable tblCourse5; // tblCourse5 = course5.Tables["Course2"]; // int maxWeight2 = 0; // foreach (DataRow drCurrent in tblCourse5.Rows) // { // Module loadModule = new Module(); // Assessment loadAssessment = new Assessment(); // this.courseNameLbl.Text = drCurrent["Course_Name"].ToString(); // this.courseCodeLbl.Text = drCurrent["Course_Code"].ToString(); // loadModule.Level = int.Parse(drCurrent["Module_Level"].ToString()); // loadModule.ModuleName = drCurrent["Module_Name"].ToString(); // loadModule.ModuleCode = drCurrent["Module_Code"].ToString(); // loadModule.ModuleCredits = int.Parse(drCurrent["Module_Credits"].ToString()); // loadAssessment.AssessmentName = drCurrent["Assessment_Name"].ToString(); // maxWeight2 = maxWeight2 + int.Parse(drCurrent["Assessment_Weighting"].ToString()); // loadAssessment.AssessmentWeighting = int.Parse(drCurrent["Assessment_Weighting"].ToString()); // loadAssessment.AssessmentMark = int.Parse(drCurrent["Assessment_Mark"].ToString()); // assessmentList.Add(loadAssessment); // if (maxWeight2 == 100) // { // List<Assessment> assessList2 = new List<Assessment>(); // assessList2.AddRange(assessmentList); // loadModule.UpdateList(assessList2); // // moduleListlvl5.Add(loadModule); // assessmentList.Clear(); // maxWeight2 = 0; // } // } // SqlDataAdapter Modules6 = new SqlDataAdapter("Select * From dbo.Course where Module_Level = 6", myConnection); // DataSet course6 = new DataSet("Course3"); // Modules6.FillSchema(course6, SchemaType.Source, "Course3"); // Modules6.Fill(course6, "Course3"); // DataTable tblCourse6; // tblCourse6 = course6.Tables["Course3"]; // int maxWeight3 = 0; // foreach (DataRow drCurrent in tblCourse6.Rows) // { // Module loadModule = new Module(); // Assessment loadAssessment = new Assessment(); // this.courseNameLbl.Text = drCurrent["Course_Name"].ToString(); // this.courseCodeLbl.Text = drCurrent["Course_Code"].ToString(); // loadModule.Level = int.Parse(drCurrent["Module_Level"].ToString()); // loadModule.ModuleName = drCurrent["Module_Name"].ToString(); // loadModule.ModuleCode = drCurrent["Module_Code"].ToString(); // loadModule.ModuleCredits = int.Parse(drCurrent["Module_Credits"].ToString()); // loadAssessment.AssessmentName = drCurrent["Assessment_Name"].ToString(); // maxWeight3 = maxWeight3 + int.Parse(drCurrent["Assessment_Weighting"].ToString()); // loadAssessment.AssessmentWeighting = int.Parse(drCurrent["Assessment_Weighting"].ToString()); // loadAssessment.AssessmentMark = int.Parse(drCurrent["Assessment_Mark"].ToString()); // assessmentList.Add(loadAssessment); // if (maxWeight3 == 100) // { // List<Assessment> assessList2 = new List<Assessment>(); // assessList2.AddRange(assessmentList); // loadModule.UpdateList(assessList2); // // moduleListlvl6.Add(loadModule); // assessmentList.Clear(); // maxWeight3 = 0; // } // } // myConnection.Close(); //} //catch (Exception err) //{ // Console.WriteLine(err); //} try { XmlDocument doc = new XmlDocument(); doc.Load("SavedData.xml"); XmlNode xmllst = doc.SelectSingleNode("Modules"); using (XmlReader reader = XmlReader.Create("SavedData.xml")) while (reader.Read()) { if (reader.IsStartElement()) { if (reader.Name == "Modules4") { readmodules4(reader.ReadSubtree()); } else if (reader.Name == "Modules5") { readmodules5(reader.ReadSubtree()); } else if (reader.Name == "Modules6") { readmodules6(reader.ReadSubtree()); } } switch (reader.Name) { case "CourseName": this.courseNameLbl.Text = reader.ReadString(); cd.CourseName = this.courseNameLbl.Text; break; case "CourseCode": this.courseCodeLbl.Text = reader.ReadString(); cd.CourseCode = this.courseCodeLbl.Text; break; } } void readmodules4(XmlReader reader) { totalWeight = 0; while (reader.Read()) { switch (reader.Name) { case "Name": moduleName = reader.ReadString(); break; case "Code": moduleCode = reader.ReadString(); break; case "Credits": credits = int.Parse(reader.ReadString()); break; case "AssessmentName": assessmentName = reader.ReadString(); break; case "Mark": mark = int.Parse(reader.ReadString()); break; case "Weighting": weight = int.Parse(reader.ReadString()); totalWeight = totalWeight + weight; break; } if (reader.NodeType == XmlNodeType.EndElement && reader.Name == "Assessment") { Assessment assess = new Assessment(); assess.AssessmentMark = mark; assess.AssessmentName = assessmentName; assess.AssessmentWeighting = weight; assessmentList.Add(assess); } if (reader.NodeType == XmlNodeType.EndElement && reader.Name == "Module") { List <Assessment> asessList2 = new List <Assessment>(); asessList2.AddRange(assessmentList); Module mod2 = new Module(); mod2.ModuleName = moduleName; mod2.ModuleCode = moduleCode; mod2.ModuleCredits = credits; mod2.Level = 4; mod2.UpdateList(asessList2); moduleListlvl4.Add(mod2); assessmentList.Clear(); totalWeight = 0; } } Update(); } void readmodules5(XmlReader reader) { totalWeight = 0; while (reader.Read()) { switch (reader.Name) { case "Name": moduleName = reader.ReadString(); break; case "Code": moduleCode = reader.ReadString(); break; case "Credits": credits = int.Parse(reader.ReadString()); break; case "AssessmentName": assessmentName = reader.ReadString(); break; case "Mark": mark = int.Parse(reader.ReadString()); break; case "Weighting": weight = int.Parse(reader.ReadString()); totalWeight = totalWeight + weight; break; } if (reader.NodeType == XmlNodeType.EndElement && reader.Name == "Assessment") { Assessment assess = new Assessment(); assess.AssessmentMark = mark; assess.AssessmentName = assessmentName; assess.AssessmentWeighting = weight; assessmentList.Add(assess); } if (reader.NodeType == XmlNodeType.EndElement && reader.Name == "Module") { List <Assessment> asessList2 = new List <Assessment>(); asessList2.AddRange(assessmentList); Module mod2 = new Module(); mod2.ModuleName = moduleName; mod2.ModuleCode = moduleCode; mod2.ModuleCredits = credits; mod2.Level = 5; mod2.UpdateList(asessList2); moduleListlvl5.Add(mod2); assessmentList.Clear(); totalWeight = 0; } } Update(); } void readmodules6(XmlReader reader) { totalWeight = 0; while (reader.Read()) { switch (reader.Name) { case "Name": moduleName = reader.ReadString(); break; case "Code": moduleCode = reader.ReadString(); break; case "Credits": credits = int.Parse(reader.ReadString()); break; case "AssessmentName": assessmentName = reader.ReadString(); break; case "Mark": mark = int.Parse(reader.ReadString()); break; case "Weighting": weight = int.Parse(reader.ReadString()); totalWeight = totalWeight + weight; break; } if (reader.NodeType == XmlNodeType.EndElement && reader.Name == "Assessment") { Assessment assess = new Assessment(); assess.AssessmentMark = mark; assess.AssessmentName = assessmentName; assess.AssessmentWeighting = weight; assessmentList.Add(assess); } if (reader.NodeType == XmlNodeType.EndElement && reader.Name == "Module") { List <Assessment> asessList2 = new List <Assessment>(); asessList2.AddRange(assessmentList); Module mod2 = new Module(); mod2.ModuleName = moduleName; mod2.ModuleCode = moduleCode; mod2.ModuleCredits = credits; mod2.Level = 6; mod2.UpdateList(asessList2); moduleListlvl6.Add(mod2); assessmentList.Clear(); totalWeight = 0; } } moduleList = moduleListlvl4.Concat(moduleListlvl5).Concat(moduleListlvl6).ToList(); Update(); } } catch (FileNotFoundException exception) { Console.WriteLine(exception); } } else { this.courseNameLbl.Text = cd.CourseName; this.courseCodeLbl.Text = cd.CourseCode; } }
public void getAssessmentInfo(Assessment obj) { Console.WriteLine($"Module Name = {this.moduleName}\n Module Code= {this.moduleCode} \n Module Credits= {this.moduleCode}\n"); obj.getAssessment(); }