Используйте TimeSpan
для проверки допуска - TimeSpan
- это тип, возвращаемый из вычитания DateTimes:
TimeSpan tolerance = new TimeSpan(0,0,1);
return (date1 - date2) <= tolerance;
Compare
, CompareTo
и Equals
не будут принимать допуски для сравнения, поэтому не могут использоваться таким образом.
Другие варианты - создать новые DateTime
s из существующих, отбрасывая нежелательную точность и сравнивая новые:
DateTime noSeconds1 = new DateTime(d1.Year, d1.Month, d1.Day, d1.Hour, d1.Minute, 0);
DateTime noSeconds2 = new DateTime(d2.Year, d2.Month, d2.Day, d2.Hour, d2.Minute, 0);
noSeconds1.Equals(noSeconds2);
DateTime.Compare(noSeconds1, noSeconds2);
noSeconds1.CompareTo(noSeconds2);