如何动态指定Linq OrderBy参数?
如何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();
回答:
这是使用反射的可能性…
var param = "Address"; var propertyInfo = typeof(Student).GetProperty(param);
var orderByAddress = items.OrderBy(x => propertyInfo.GetValue(x, null));
以上是 如何动态指定Linq OrderBy参数? 的全部内容, 来源链接: utcz.com/qa/398180.html