public bool WriteAbsence(StudentAbsence studentAbsence)
 {
     try
     {
         SaveAbsence(studentAbsence);
         return(true);
     }
     catch (MySqlException e)
     {
         Console.WriteLine(e.StackTrace);
         return(false);
     }
 }
 private void SaveAbsence(StudentAbsence studentAbsence)
 {
     using (IDbConnection db = new MySqlConnection(ConfigurationManager.ConnectionStrings["DbConnection"].ConnectionString))
     {
         const string sqlQuery = "INSERT INTO absenz(datum, grund, FK_Schueler, FK_Fach, FK_Lehrperson) " +
                                 "VALUES (@Date, @Reason, " +
                                 "(SELECT id_schueler FROM schueler WHERE vorname = @studentFirstname AND nachname = @studentLastname), " +
                                 "(SELECT id_fach FROM fach WHERE name = @Subject)," +
                                 "(SELECT id_lehrperson FROM lehrperson WHERE vorname = @teacherFirstname AND nachname = @teacherLastname))";
         db.Execute(sqlQuery, new
         {
             studentAbsence.Date,
             studentAbsence.Reason,
             studentFirstname = SplitName(studentAbsence.Student)[0],
             studentLastname  = SplitName(studentAbsence.Student)[1],
             studentAbsence.Subject,
             teacherFirstname = SplitName(studentAbsence.Teacher)[0],
             teacherLastname  = SplitName(studentAbsence.Teacher)[1]
         });
     }
 }
Exemplo n.º 3
0
 private void SaveAbsenceButton_Click(object sender, EventArgs e)
 {
     _studentAbsence = new StudentAbsence(studentTextField.Text, teacherTextField.Text, subjectTextField.Text, reasonTextField.Text, dateTextField.Text);
     _studentRepository.WriteAbsence(_studentAbsence);
 }