J'ai un groupe d'objets (produits) et je souhaite les classer par date, en commençant par un ordre décroissant, puis afficher uniquement les 10 premiers enregistrements. Le format de la date créée (DateTime) est le suivant.
4/4/2007 12:00:00 AM
C'est ce que j'ai essayé.
Comment puis-je trier le top 10 par ordre décroissant par date?
var productLatestReleases = (from p in visualsProduct
from pf in p.DomainObjectFields
select p).Distinct().OrderByDescending(d => d.DateCreated).Take(10);
Puisque vous décrivez le format de la date, je suppose que le type de données de la propriété DateCreated
est string
. Si c'est le cas, vous pourriez faire:
.OrderByDescending(d => Convert.ToDateTime(d.DateCreated)).Take(10)
En outre, votre Distinct()
n'aura pas beaucoup d'effet si vous ne spécifiez pas votre propre égalité à comparer.