Linq à sql: ordre par datetime desc, puis ordonner par la partie de temps des données asc?
C'est un rapide.
Dans Linq to sql, j'ai besoin de faire une commande d'un champ datetime décroissant ensuite la commande par le temps la même datetime déposé croissant de sens? Voici un exemple de résultat nécessaires:
[Serial] [Date (mm-jj-aaaa hh-MM-ss)]
1 3-13-2008:10-10-02
2 3-13-2008:10-12-60
3 3-12-2008:12-05-55
J'ai essayé :
return query.OrderByDescending(c=> c.Time).ThenBy(c=> c.Time.TimeOfDay);
Et j'ai aussi essayé:
query.OrderByDescending(c => c.Time).ThenBy(c => c.Time.Hour).ThenBy(c=> c.Time.Minute).ThenBy(c=> c.Time.Second);
mais jamais semblé fonctionner.
Des suggestions?
source d'informationauteur Galilyou | 2011-03-28
Vous devez vous connecter pour publier un commentaire.
Utiliser le
Date
etTimeOfDay
propriétés de la sorte.Le Problème est que le "Temps" contient la Date et l'Heure, ainsi, déjà tri complètement. Vous devez prendre la Partie de la Date de trier avec les premières.
Pas testé 🙂
Je pense d'abord orderByDescending sortes tout en datetime(date+heure), donc la suite orderbys ne sera efficace que si vous avez des dossiers à la même heure.
Essayer cette
Tourner à tiques fonctionnera aussi bien: