我有一个 LINQ 对象查询来选择所有 20 岁以上的人
IEnumerable<Object> result = null;
result = (from person in AllPersons.ToList()
where person.age > 20
select new
{
FirstName= person.FirstName,
LastName= person.LastName,
Email= person.Email,
PhoneNumber= person.PhoneNumber
});
return result;
我有一个参数string SortProperty
,我想用它来根据属性对结果进行排序。
例如,如果SortProperty="FirstName"
我想根据名字对结果进行排序。
我尝试执行以下操作:
return result.OrderBy(x => x.GetType().GetProperty(SortProperty));
但它没有用
知道怎么做吗?
PS:我不想测试所有可能性,并在每个可能性上做一个 if-else 或一个案例切换。我正在寻找一种有效的方法来做到这一点
谢谢