Ich habe diese Abfrage, die ein IQueryable-Ergebnis zurückgibt.Sortierung eines IQueryable-Ergebnisses Linq
return supplierInvoices.Union(otherInvoices.Join(orders, invoice => invoice.OrderId, order => order.Id, (invoice, order) => new { Order = order, Invoice = (invoice as IReconcilableInvoiceEntity) }))
.GroupBy(m => m.Order)
.Where(m => m.Any())
.Select(m => new KeyValuePair<Order, IQueryable<IReconcilableInvoiceEntity>>(m.Key, m.Select(n => n.Invoice).AsQueryable()));
ich diese müssen in absteigender Reihenfolge nach CreatedOn
Spalte (datetime
) sortiert werden. Ich habe versucht, orderbydescending(a => a.CreatedOn)
und orderbydescending(a=> a.Key.CreatedOn)
mit dieser Abfrage zu verwenden, aber immer noch nicht das erwartete Ergebnis zu geben. Alle Hilfe wird geschätzt. Vielen Dank!
Bearbeiten - Was ich
return supplierInvoices.Union(otherInvoices.Join(orders, invoice => invoice.OrderId, order => order.Id, (invoice, order) => new { Order = order, Invoice = (invoice as IReconcilableInvoiceEntity) }))
.GroupBy(m => m.Order)
.Where(m => m.Any())
.OrderByDescending(m => m.Key.CreatedOn)
.Select(m => new KeyValuePair<Order, IQueryable<IReconcilableInvoiceEntity>>(m.Key, m.Select(n => n.Invoice).AsQueryable()));
versucht haben, sortieren Das nicht richtig
Ein weiterer Versuch
return supplierInvoices.Union(otherInvoices.Join(orders, invoice => invoice.OrderId, order => order.Id, (invoice, order) => new { Order = order, Invoice = (invoice as IReconcilableInvoiceEntity) }))
.GroupBy(m => m.Order)
.Where(m => m.Any())
.Select(m => new KeyValuePair<Order, IQueryable<IReconcilableInvoiceEntity>>(m.Key, m.Select(n => n.Invoice).AsQueryable().OrderByDescending(m => m.CreatedOn)));
, die einen Fehler gibt.
Bearbeiten Sie die Frage mit dem OrderByDescending, die nicht funktioniert, damit wir sehen können, was Sie versucht haben. – Esko
@Esko: Aktualisiert .. – Isuru