Вот два способа сравнения двух DateTimes:
DateTime now = DateTime.Now;
DateTime then = new DateTime(2008, 8, 1);
// Method 1
if (DateTime.Compare(then, now) < 0)
// ...
// Method 2
if (then < now)
// ...
.Compare
возвращает целое число (-1,0,1), указывающее, является ли первый экземпляр более ранним, таким же или более позднимчем второй экземпляр.
Мой вопрос: зачем мне использовать .Compare
, когда я могу использовать реляционные операторы (<
, <=
, ==
, >=
, >
) напрямую?Мне кажется, что, используя .Compare
, мне все равно нужно использовать реляционные операторы (по крайней мере, в приведенном выше примере; в качестве альтернативы я мог бы создать оператор switch, исследующий случаи -1, 0 и 1).
Какие ситуациипредпочел бы или требует использования DateTime.Compare()
?