Heute habe ich in einem alten Code einen Bug gefunden, der ein paar Jahre unbemerkt war. Es geht dabei um die Ermittlung von Datum und Uhrzeit in C#.

Die wichtigste Unterscheidung ist hierbei zwischen DateTime.Now und DateTime.Today. Today liefert das Datum mit der Uhrzeit: 00:00:00. Now hingegen beinhaltet das Datum und die Uhrzeit.

aktuelles Datum und Uhrzeit

  • DateTime.Now // 10/10/2022 6:35:46 PM
  • DateTime.Now.ToString() // 10/10/2022 6:35:46 PM
  • DateTime.Now.ToString(„yyyy-MM-dd hh:mm:ss“) // 2022-10-10 06:35:46

aktuelles Datum ohne Uhrzeit

  • DateTime.Today // 10/10/2022 12:00:00 AM
  • DateTime.Today.ToString() // 10/10/2022 12:00:00 AM
  • DateTime.Today.ToString(„yyyy-MM-dd“) // 2022-10-10
  • DateTime.Now.ToString(„yyyy-MM-dd“) //2022-10-10
  • DateTime.Now.Date // 10/10/2022 12:00:00 AM
  • DateTime.Now.ToShortDateString() // 10/10/2022

weiterführende Links: