对于动态linq查询中的orderby方法,好像用的最广的就是一个参数的重载。查了下github上的使用实例,对于两个参数的重载都只有这么一句:
DynamicQueryableExtensions.ThenBy(null, "Id");
google查了一大圈,没有关于两个参数重载的使用实例,请问有人用过么?谢谢!
你想说啥呢?想实现多个字段的排序是吗?
Orderby + Thenby
2=n
并不是,我只是想知道在linq.dynamic的程序集下orderby方法两个参数的使用方法。并不是什么多个字段排序。
Linq 多字段排序,就是在 OrderBy 后面接 ThenBy,
下面例子,输出顺序为:测试4 -> 测试3 -> 测试2 -> 测试1:
List<Jump> lst = new List<Jump>
{
new Jump { Momey2 = 2, Money1 = 1, Money = 1, Name = "测试1"},
new Jump { Momey2 = 1, Money1 = 2, Money = 1, Name = "测试2"},
new Jump { Momey2 = 1, Money1 = 1, Money = 2, Name = "测试3"},
new Jump { Momey2 = 1, Money1 = 1, Money = 1, Name = "测试4"},
};
lst = lst.OrderBy(l1 => l1.Momey2).ThenBy(l2 => l2.Money1).ThenBy(l3 => l3.Money).ToList();
for (int i = 0; i < lst.Count; i++)
{
Console.WriteLine("第" + (i + 1) + "个:" + lst[i].Name);
}
感谢回复,不过我并不是想实现多个字段的排序,而且我想使用的orderby是在linq.dynamic程序集下的,并不是linq自己提供的。具体的问题是:linq.dynamic程序集下的orderby方法两个参数的使用示例,及其表示的意思。