Uso TimeSpan
para su control de tolerancia - TimeSpan
es el Tipo devuelto desde DateTime restando:
TimeSpan tolerance = new TimeSpan(0,0,1);
return (date1 - date2) <= tolerance;
Compare
, CompareTo
y Equals
no tomará una tolerancia para la comparación, por lo no se puede usar de esta manera.
Otras opciones son crear nueva DateTime
s de los ya existentes, descartando la precisión no deseado y la comparación de los nuevos:
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);