假设我有以下简单查询
var q =
from p in products
orderby p.ProductName descending
select p;
在运行时指定排序字段和方向的最简单,最直接的方法是什么?
答案 0 :(得分:1)
我们之前使用动态linq库来执行此操作。 Here's a link访问Scott Guthrie的博客。
基本上你可以改变上面的查询,如下所示:
var q = db.Products
.OrderBy("ProductName Descending")
答案 1 :(得分:1)
我用switch语句做了。这是一个片段,我正朝着上升的方向前进。在我的网址中,我传入了一个参数来确定方向,以及要排序的内容。
if (sortDirection == "asc")
{
switch (sortCol)
{
case 1:
q = from f in q
orderby f.Id ascending
select f;
q显然是原始LINQ选择的结果。