Как я могу использовать временной интервал для каждой строки таблицы SQL и суммировать все это потом?
Я делаю систему заработной платы для входа и выхода из системы. Чтобы получить интервал между двумя разными временами, я использовал временной интервал, но мне нужно использовать его в каждой строке сотрудника, чтобы я мог сложить все за целый месяц. Это мой код для получения временного интервала конкретной строки:
DateTime dt1 = Convert.ToDateTime(label9.Text);
DateTime dt2 = Convert.ToDateTime(label10.Text);
TimeSpan total = dt2 - dt1;
Label9.Text и Label10.Text невидимы в формах, всякий раз, когда я щелкаю конкретную строку в виде сетки, время и время из конкретной строки будут вставляться в эти метки, чтобы я мог получить временной интервал.
2 ответа
Решение
Суммирование TimeSpans в C#, одним из способов является
TimeSpan totalTime = new TimeSpan(0);
foreach(var something in somethings)
{
totalTime = totalTime.Add(new TimeSpan(something.end - something.start);
}
Для суммирования даты и времени можно использовать что-то вроде:
string startTime = "7:00 AM";
string endTime = "2:00 PM";
TimeSpan duration = DateTime.Parse(endTime).Subtract(DateTime.Parse(startTime));