为了账号安全,请及时绑定邮箱和手机立即绑定

如何动态指定Linq OrderBy参数?

如何动态指定Linq OrderBy参数?

C#
杨魅力 2019-10-16 14:11:04
如何orderby使用我作为参数的值指定传递给参数的参数?例如:List<Student> existingStudends = new List<Student>{ new Student {...}, new Student {...}}目前执行:List<Student> orderbyAddress = existingStudends.OrderBy(c => c.Address).ToList();而不是c.Address,我如何将其作为参数?例 string param = "City"; List<Student> orderbyAddress = existingStudends.OrderByDescending(c => param).ToList();
查看完整描述

3 回答

?
猛跑小猪

TA贡献1858条经验 获得超8个赞

这是使用反射的可能性...


var param = "Address";    

var propertyInfo = typeof(Student).GetProperty(param);    

var orderByAddress = items.OrderBy(x => propertyInfo.GetValue(x, null));


查看完整回答
反对 回复 2019-10-16
  • 3 回答
  • 0 关注
  • 803 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信