我有一个来自SQL查询的LINQ,它返回已排序的行。 例如,它将返回:1 1 1 1 1 1 1 1 2 2 2 3 3 3 3 3 4 4 4 4 我正在寻找一种方法告诉LINQ削减&粘贴所有的1并将它放在3的后面,所以它看起来像2 2 2 3 3 3 3 3 1 1 1 1 1 1 1 4 4 4 4.
重定位指针的最有效方法是什么? (不选择&删除和复制)
感谢
答案 0 :(得分:5)
尝试
query.OrderBy(x => x == 1 : 3.5 ? (float)x);
答案 1 :(得分:2)
试试这个:
var list = <YourLinqQuery>.ToList();
var sortedList = list.OrderBy(a=> (a==1)? 3.5:a);
答案 2 :(得分:1)
我会在Linq to SQL查询中这样做:
var query = from x in context.Table
let Order = x.RowNum == 1 ? 3.5 : x.RowNum
orderby Order
select x;