Powiel możliwe:
How to compare Dates in C#Jak przetestować dwa terminy dateTimes na tę samą datę?
Ten kod kopalni:
public static string getLogFileNameForDate(DateTime dt)
{
if (dt.Equals(DateTime.Now))
... nie, nawet gdy te dwie daty są takie same (data), ponieważ jest dt przypisano wartość przy starcie (np. "6/18/2012 15:19:42"), więc daty nie są dokładnie takie same, mimo że rok, miesiąc i dzień są takie same (wartość DateTime . Teraz może być na przykład "6/18/2012 15:30:13").
wiem, że mogę przetestować go w ten sposób:
if ((dt.Year.Equals(DateTime.Now.Year) && (dt.Month.Equals(DateTime.Now.Month) && (dt.Day.Equals(DateTime.Now.Day))
... ale to wydaje się nieco Jethro * -jak
Co jest (no pun przeznaczone) przyjętą/preferowaną metodą?
- Clampett nie Tull
dt.Date.CompareTo (DateTime.Now.Date) == 0 powinno załatwić sprawę. – dash
Aha, i http://stackoverflow.com/questions/683037/how-to-compare-dates-in-c-sharp – dash
@dash: Wygląda na to, że potrzebujesz mitycznej odznaki "Seeing Double" dla tych dupek, które ciągle odnajdujesz . –