我的问题是,我想根据列表中的对象调用.OrderBy()和多个.ThenBy()。
因此,对于4个对象,它将是:
db.Entity.Where(lambda expression).OrderBy(lambda from object1).ThenBy(lambda from object2).ThenBy(lambda from object3).ThenBy(lambda from object4).如何通过循环反射调用上述方法的等效值?
我很可能不得不通过反思来做这件事。类似于:
foreach(var sortLambda in sortLambdaList)
{
//Build expression to build daisy-chain method call
}发布于 2014-06-25 20:01:14
这可能会变得更花哨,但一般的想法是。
var query = db.Entity.Where(lambda expression);
var first = true;
foreach(var sortLambda in sortLambdaList)
{
if (first) {
query = query.OrderBy(sortLambda);
} else {
first = false;
query = query.ThenBy(sortLamda);
}
}https://stackoverflow.com/questions/24416339
复制相似问题