我知道PredicateBuilder可以做和OR的东西,但是如何做一个动态的ordeby linq查询.
IQueryable<Foo> query = ...; switch (orderByParameter) { case "price": query = query.OrderBy(x => x.Price); break; case "rating": query = query.OrderBy(x => x.Rating); break; // etc }
你也可以用反思来做,但假设你有一定数量的字段来排序,这可能是最简单的方法.