【发布时间】:2019-02-13 02:55:26
【问题描述】:
我有一个需要订购的清单,例如。
var list = someelements;
我还有一个参数,说明我应该通过哪个属性和哪个方向订购列表数据。
var sortby = "Name";
var sortdirection = "desc";
我想知道是否可以将字符串属性名称与正确的属性匹配,所以我得到:
var list = someelements.OrderBy(x => x.Name).ToList();
当sortby == "Name" 不需要使用 switch 循环检查属性名称并将正确的属性分配给 OrderBy。
同样,我想通过选择 OrderBy 或 OrderByDescending 来实现,这取决于我得到的是 sortdirection = "asc" 还是 sortdirection = "desc"
有可能吗?如果可以,怎么做?
【问题讨论】:
-
依靠
OrderBy或OrderByDescending对sortDirection值的计数非常简单:使用条件(在这种情况下,即使是三元运算符也可以完成工作)。