private void addBTN_Click(object sender, EventArgs e) { if(IdTB.Text.Length > 0 && FNameTB.Text.Length > 0 && LNameTB.Text.Length > 0 && emailTB.Text.Length > 0) { string providedClassID = classList[classComboBox.SelectedIndex].getClassID(); DataBaseManager.errorInfo eI = new DataBaseManager.errorInfo(); if (!DataBaseManager.insertStudent(IdTB.Text, FNameTB.Text, LNameTB.Text, emailTB.Text, providedClassID, out eI)) { MessageBox.Show(eI.returnedError.Message, eI.returnedError.Source, MessageBoxButtons.OK, MessageBoxIcon.Error); IdTB.Clear(); } else { populateStudentsListView(); } } else { MessageBox.Show("You are missing some important information!", "Missing Information", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void importBTN_Click(object sender, EventArgs e) { OpenFileDialog csvDialog = new OpenFileDialog(); //Variables to capture student data; string csvLine, firstName, lastName, email, notes, studentID; string[] lineElements; csvDialog.CheckFileExists = true; csvDialog.Filter = "CSV File (*.csv)|*.csv"; try { if (csvDialog.ShowDialog() == DialogResult.OK) { StreamReader csvFileStream = new StreamReader(csvDialog.OpenFile()); DataBaseManager.errorInfo eI = new DataBaseManager.errorInfo(); if (csvFileStream != null) { csvLine = csvFileStream.ReadLine(); while (csvLine != null) { lineElements = csvLine.Split(new Char[] { ',' });//Splits the line into seperate strings according to array param elements if (lineElements.Length < 4)//Make sure we have enough data to properly populate database { MessageBox.Show("The CSV couldn't be parsed correctly.\nYou imported a file with " + lineElements.Length + " values, you need at least 4.\nYou must inlcude Student ID, First Name, Last Name, and E-mail.", "CSV Format", MessageBoxButtons.OK, MessageBoxIcon.Error); break; } studentID = lineElements[0]; if(studentID.StartsWith("#")) studentID = studentID.TrimStart('#'); studentID = studentID.Remove(0, 2); firstName = lineElements[1]; lastName = lineElements[2]; email = lineElements[3]; if (lineElements.Length == 5) { notes = lineElements[4]; //Insert into database query with all elements } else if(lineElements.Length == 4) { //Insert into database query without notes string providedClassID = classList[classComboBox.SelectedIndex].getClassID(); if (!DataBaseManager.insertStudent(studentID, firstName, lastName, email, providedClassID, out eI)) { MessageBox.Show(eI.returnedError.Message, eI.returnedError.Source, MessageBoxButtons.OK, MessageBoxIcon.Error); break; } populateStudentsListView(); } csvLine = csvFileStream.ReadLine(); } } csvFileStream.Close(); } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error); } }