dynamische Sortierung in Linq
Bitte betrachten Sie dieses Szenario:
Ich habe eine Liste einer Klasse mit ungefähr 50 Feldern. Ich möchte eine Combobox, die der Benutzer nach der Sortierung der Feldliste auswählen kann. Zum Beispiel, wenn der Benutzer die Liste "F1" nach "F1" sortieren möchte.
Ich möchte nicht sortierenif-else
für alle Felder. Ich sehe dieses Thema:
Sortieren einer Rasteransicht beim Verknüpfen einer Sammlung oder Liste von Objekten mit Daten
Aber ich kann die Antwort nicht verwenden. Wie kann ich verwendenExpression Tree
für diesen Zweck?
Bearbeiten 1) :
Laut lieber @Thom Smith Antwort habe ich diesen Code geschrieben:
using (NorthwindModel1.NorthwindEntities2 ent = new NorthwindModel1.NorthwindEntities2())
{
var query = from o in ent.Orders
where o.OrderID < 10257
select o;
query.OrderBy("CustomerID", SortDirection.Ascending);
GridView1.DataSource = query;
GridView1.DataBind();
}
aber es wurde nicht sortiert. Wenn ich diesen Code auf diese Weise geschrieben habe:
GridView1.DataSource = query.OrderBy(o=>o.CustomerID);
es ist eine Art. Wo ist das Problem?