Comment vérifier si 20 minutes se sont écoulées depuis la date actuelle?
Par exemple:
var start = DateTime.Now;
var oldDate = "08/10/2011 23:50:31";
if(start ??) {
//20 minutes were passed from start
}
quelle est la meilleure façon de faire ça? Merci :)
var start = DateTime.Now;
var oldDate = DateTime.Parse("08/10/2011 23:50:31");
if ((start - oldDate).TotalMinutes >= 20)
{
//20 minutes were passed from start
}
Analyser oldDate
dans un objet DateTime
(DateTime.Parse
).
Soustrayez la date analysée de start
. Cela retournera un TimeSpan
.
Inspecter TotalMinutes
.
var start = DateTime.Now;
var oldDate = DateTime.Parse("08/10/2011 23:50:31");
if(start.Subtract(oldDate) >= TimeSpan.FromMinutes(20))
{
//20 minutes were passed from start
}
J'ai pu accomplir cela en utilisant une bibliothèque JodaTime dans mon projet. Je suis sorti avec ce code.
String datetime1 = "2012/08/24 05:22:34";
String datetime2 = "2012/08/24 05:23:28";
DateTimeFormatter format = DateTimeFormat.forPattern("yyyy/MM/dd HH:mm:ss");
DateTime time1 = format.parseDateTime(datetime1);
DateTime time2 = format.parseDateTime(datetime2);
Minutes Interval = Minutes.minutesBetween(time1, time2);
Minutes minInterval = Minutes.minutes(20);
if(Interval.isGreaterThan(minInterval)){
return true;
}
else{
return false;
}
Cela vérifiera si l'intervalle de temps entre datetime1 et datetime2 est supérieur à 20 minutes. Modifiez la propriété en secondes. Ce sera plus facile pour vous savez. Cela retournera faux.
var end = DateTime.Parse(oldDate);
if (start.Hour == end.Hour && start.AddMinutes(20).Minute >= end.Minute)