2017-10-21 35 views
0

J'ai besoin d'une liste de nœuds, basée sur 2 règles, toutes deux liées à un champ de date (myDate dans cet exemple).Récupère les nœuds en fonction de diverses règles de date

J'ai actuellement ce qui suit, qui ne prend que l'une des 2 règles, qui vérifie si le champ date est vide;

Dans le même
var results = root.Descendants("myDocType") 
    .Where(x => !x.GetProperty("myDate").HasValue) 
    .OrderBy("myDate desc"); 

clause Where, je dois vérifier:

  • La date est vide ou
  • La date est aujourd'hui ou plus tôt (juste la date, pas le temps de la journée)

J'ai donc fondamentalement besoin d'ajouter la dernière exigence à ma clause Where. Mais comment?

Répondre

0

trouvé la solution:

var results = root.Descendants("myDocType") 
    .Where(x => !x.GetProperty("myDate").HasValue 
      || x.GetPropertyValue<DateTime>("myDate") >= DateTime.Now.Date) 
    .OrderBy("myDate desc");