dateDiff(dd,getDate(),ExpirationDate)
Проводит сравнение дней. DateTime.Now.Subtract(expirationDate).Days
делает дату и время
Например
SELECT dateDiff(dd,'10/1/2011 23:59:00' , '10/2/2011')
возвращает один день, даже если с интервалом всего одна минута.
Если вы хотите то же самое в C #, вам нужно удалить компонент времени
, например
DateTime dt1 = new DateTime(2011,10,1, 23,59,0);
DateTime dt2 = new DateTime(2011,10,2, 0,0,0);
Console.WriteLine((int) dt2.Subtract(dt1.Subtract(dt1.TimeOfDay)));
Так что в вашем случае это будет что-то вроде
DateTime CurrentDate = DateTime.Now;
int reso = CurrentDate.Subtract(CurrentDate.TimeOfDay).Subtract(DateTime.expirationDate).Days;
Я не проверял это, но я не сделал бы
DateTime.Now.Subtract(DateTime.Now.Subtract.TimeOfDay)
Поскольку второй вызов Now не будет таким же, как первый вызов Now 1023 *
В любом случае ответ Стелс Рабби кажется более элегантным, поскольку вы ищете TimeSpan, а не DateTime