Я пытаюсь заставить мою программу рассчитывать время перерыва с данными, хранящимися в базе данных mysql
.
private void timerpause_Tick(object sender, EventArgs e)
{
MySqlConnection conn = DBUtils.GetDBConnection();
conn.Open();
MySqlCommand dbrequest = conn.CreateCommand();
dbrequest.CommandText = "SELECT pstart FROM arbeitszeiten WHERE fullname = '" + textBoxfullname.Text + "' and active = 'JA'";
string pausebeginn = dbrequest.ExecuteScalar().ToString();
MySqlCommand dbrequest2 = conn.CreateCommand();
dbrequest2.CommandText = "SELECT ptotal FROM arbeitszeiten WHERE fullname = '" + textBoxfullname.Text + "' and active = 'JA'";
string pausenzeit = dbrequest2.ExecuteScalar().ToString();
TimeSpan pause = Convert.ToDateTime(pausenzeit).TimeOfDay;
DateTime start = Convert.ToDateTime(pausebeginn);
TimeSpan zwischen = (DateTime.Now - Convert.ToDateTime(start)).Add(pause);
label1.Text = zwischen.ToString();
conn.Close();
}
Когда код выполняется, он говорит мне:
TimeSpan pause = Convert.ToDateTime(pausenzeit).TimeOfDay;
Уставы не определяются как действительные значения DateTime
(Die Zeichenfolge wurde nicht als gültiges DateTime erkannt)
Формат:
DB pstart = yyyy-MM-dd HH:mm:ss
DB ptotal = HH:mm:ss
Кто-нибудь видит мою ошибку (кроме отсутствиязапросы еще не заданы)?