Je suis sûr que ce sera relativement simple.
J'ai une requête LINQ que je souhaite commander à la date de création la plus récente.
Voir:
var itemList = from t in ctn.Items
where !t.Items && t.DeliverySelection
orderby t.Delivery.SubmissionDate descending
select t;
J'ai aussi essayé:
var itemList = (from t in ctn.Items
where !t.Items && t.DeliverySelection
select t).OrderByDescending();
mais cela donne une erreur:
Aucune surcharge pour la méthode 'OrderByDescending' prend 0 arguments
D'après ce que j'ai lu, je suis assez sûr que la première façon dont je l'ai fait devrait fonctionner. J'ai essayé de changer descendant en ascendant juste pour voir s'il fait quelque chose mais il reste le même.
Je serais reconnaissant si quelqu'un pouvait jeter un œil à la requête et voir si je fais quelque chose de mal. Merci :)
la source
Je pense que cela a d'abord échoué parce que vous commandez une valeur nulle. Si la livraison est une table associée à une clé étrangère, vous devez d'abord inclure cette table, exemple ci-dessous:
la source
Je pense que le second devrait être
la source
Juste pour l'afficher dans un format différent que je préfère utiliser pour une raison quelconque: La première façon renvoie votre itemList en tant que System.Linq.IOrderedQueryable
Cette approche est très bien, mais si vous le vouliez directement dans un objet List:
Tout ce que vous avez à faire est d'ajouter un appel .ToList () à la fin de la requête.
Quelque chose à noter, du haut de ma tête, je ne me souviens pas si l'expression! (Not) est acceptable dans l'appel Where ().
la source