Comment vérifier la date est moins ou plus égal au mois en cours. , par exemple, toute date-heure inférieure ou égale au mois en cours devrait renvoyer la valeur true.comparer la date ci-dessous le mois courant C#
Répondre
Deux options;
1: trouver début de mois et comparer:
var monthStart = new DateTime(when.Year, when.Month, 1);
if(someDate < monthStart) {...}
2: comparer le mois et l'année
if(someDate.Year < when.Year || (someDate.Year == when.Year &&
someDate.Month < when.Month)) {...}
soit Conviendrait pour une méthode d'extension sur DateTime
En tant que méthode d'extension:
public static bool IsBeforeStartOfCurrentMonth(this DateTime date) {
DateTime now = DateTime.Now;
DateTime startOfCurrentMonth = new DateTime(now.Year, now.Month, 1);
return date < startOfCurrentMonth;
}
Utilisation:
DateTime date = // some DateTime
if(date.IsBeforeStartOfCurrentMonth()) {
// do something
}
+1 Wierd - J'ai eu presque la même réponse * exacte, jusqu'aux noms des variables et tout. –
@Andrew, peut-être lire beaucoup de code sur SO, un système de dénomination commune converge :) – Sebastian
Vous pouvez simplement comparez les valeurs Year et Month si les deux valeurs DateTime -
DateTime d1, d2;
...
d1.Year <= d2.Year && d1.Month < d2.Month;
oh..j'ai raté une partie de la question, il est moins que sont égaux au mois actuel – Madhan
deuxième travaille pour moi ... ..thnx Marc – Madhan