我如何在Linq中排序一个列,这个列是一个字符串
本文关键字:一个 字符串 Linq 排序 | 更新日期: 2023-09-27 18:16:57
我有一个索引,它从字典中获取列字符串在Linq中排序
dict.Add(0, "seleccionado");
dict.Add(1, "IdPedido");
dict.Add(2, "FechaPedido");
dict.Add(3, "NSerie");
dict.Add(4, "Importe");
我也有一个订单列表,当我单击字段的列时,我需要获得订单(DESC/ASC)。
我的想法是在一行中做Linq,因为我将传递两个参数:字符串字段order和方向(ASC/DESC)。
如何在Linq中做到这一点?
WHAT I TRIED:
pedidos.OrderBy(x => x.seleccionado);
seleccionado是类的对象,但在我的例子中,我将给出一个字符串而不是对象字段名。
如果我理解了这个问题,您是在问如何按字段对集合进行排序,其中字段是由用户选择的。
在这种情况下,为什么不将lambda存储在字典中?
dict.Add(0, x => x.seleccionado);
dict.Add(1, x => x.IdPedido);
// etc.
https://stackoverflow.com/a/2728432/3825634
这个问题以前已经回答过了。
有动态linq库可用。它们将允许你用字符串动态地构建部分linq查询