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()中存在同一类的四个不同实例或四个不同的类,则不干净;也行!