J'ai une requête linq simple qui trie les enregistrements basés sur dateTime à la fois décroissant et ascendant. pour une raison quelconque, il échoue à 13:00:00 heures.LINQ OrderBy requête ne parvient pas à trier correctement en descendant dateTime
sortedrecords = sortedrecords.OrderByDescending(x => x.DateTime).ThenBy(x=>x.Time);
est censé trier 2PM, 1PM, 12PM. Mais les enregistrements de 1 heure arrivent à la fin.
Y at-il un problème avec ma requête? Toutes les suggestions aideront.
Merci
Trier par descendant (non)
10/12/2017 2:00:56 PM
12/10/2017 14:00:50
12/10/2017 12:29:41
12/10/2017 12:28:32
12/10/2017 12:27:35
12/10/2017 11:21:35
10/12/2017 11:14:16
10/12/2017 13:49:28
12/10/2017 13:43:23
Trier par ordre croissant (correct)
10/12/2017 12:27:35 PM
10/12/2017 12:28:32
12/10/2017 12:29:41
12/10/2017 13:43:23
12/10/2017 13:49:28
10/12/2017 2:00:50 PM
10/12/2017 2:00:56 PM
Quelles sont vos propriétés 'x.DateTime' et' x.Time'? Veuillez montrer à quoi ressemble la classe de l'objet 'triedrecords'. – Sach
Essayez 'OrderByDescending (x => x.DateTime.Date) .ThenBy (x => x.Time);' –
@sach La propriété DateTime ressemble à ceci 10/12/2017 12:23:28 PM. et j'ai même essayé ce triedrecords = triedrecords.OrderByDescending (x => x.DateTime); –