Ich habe eine Windows-Anwendung, wo Benutzer Startzeit und Endzeit eingeben, wie Sie überprüfen, ob Endzeit ist nächsten Tag Zeit.Wie überprüft man, ob die Zeit am nächsten Tag ist
example: start time end time
1:00:00 AM 5:00:00 AM
5:00:00 AM 10:00:00 AM
10:00:00 AM 5:00:00 PM
5:00:00 PM 10:00:00 PM
10:00:00 PM 1:00:00 AM --(next day)
1:00:00 AM 5:00:00 AM
Ich versuche, so etwas wie unten:
private void GenerateReportWithStartTimeandEndTime(string StartTime, string EndTime, string DailyTime)
{
DateTime tempStartTime = DateTime.ParseExact(StartTime, "HH:mm:ss tt", CultureInfo.InvariantCulture);
DateTime tempEndTime = DateTime.ParseExact(EndTime, "HH:mm:ss tt", CultureInfo.InvariantCulture);
DateTime midNightToday = DateTime.Today.AddDays(1);
var StarthourDifference = (midNightToday - tempStartTime).TotalHours;
var EndhourDifference = (midNightToday - tempEndTime).TotalHours;
if (StarthourDifference - EndhourDifference > 0)
{
}
else
{
}
}
Wenn alles, was Sie ist das bloße Zeitwerte haben, die einzige Logik, die Sie anwenden können, ist zu prüfen, ob der Endwert kleiner als der Startwert ist und * annehmen *, dass dies den nächsten Tag bedeutet. Wenn das nicht das ist, was du tun willst, musst du erklären, wie wir (und der Computer) das magisch bestimmen sollen, wenn es nicht genug Informationen zu geben scheint. –
Start- und Endzeit von * was * genau? –
Beginn und Ende eines Tages – Tan