Проверка того, не будет ли Math.Abs(diff.TotalMinutes) == 0
этого делать, нет - это проверка, точно ли они .
Вы пытаетесь проверить, есть ли у них одна и та же минута, или они находятся на расстоянии менее минуты? Для первого используйте:
where RoundToMinute(dateTime1) == RoundToMinute(dateTime2)
заявив:
public static DateTime RoundToMinute(DateTime time)
{
return new DateTime(time.Year, time.Month, time.Day,
time.Hour, time.Minute, 0, time.Kind);
}
Для второго используйте:
where Math.Abs((dateTime1 - dateTime2).TotalMinutes) < 1
Вы должны учитывать, какой результат вы хотите получить в случае, если один локальный, а другой в UTC, кстати ...
Обратите внимание, что здесь нет ничего специфичного для LINQ - при условии, что вы используете LINQ to Objects. Если вы используете LINQ to SQL, то, очевидно, вы не можете использовать локальные методы, и нам придется посмотреть снова ...
РЕДАКТИРОВАТЬ: Я все еще очень неясен по вашему вопросу. Если вам нужно, чтобы они были точно той же даты / времени, это легко (оставив в стороне возможную локальную проблему против UTC):
where dateTime1 == dateTime2
Однако возникает вопрос, почему вы упоминаете «минутную точность» в заголовке вопроса или «использование с точностью до минуты» в теле вопроса.