C# 来自DbContext.NET上反射的菊花链方法

C# 来自DbContext.NET上反射的菊花链方法,c#,.net,entity-framework,reflection,C#,.net,Entity Framework,Reflection,我的问题是,我想根据列表中的对象调用.OrderBy()和多个.ThenBy() 因此,对于4个对象,它将是: db.Entity.Where(lambda expression).OrderBy(lambda from object1).ThenBy(lambda from object2).ThenBy(lambda from object3).ThenBy(lambda from object4). 如何通过循环的反射调用上述方法的等价物 我很可能要通过思考来做到这一点。。。比如: fo

我的问题是,我想根据列表中的对象调用
.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

}

这可以做得更圆滑,但总的想法是

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);
    }
}

您的问题是什么?能否提供这四个类的一些代码示例?如果在db.Entity.var query=db.Set().AsQueryable()中存在同一类的四个不同实例或四个不同的类,则不干净;也行!