6yrop
var a = ... var b = ... ...; a; ...; b; ...; var query = ....ToQuery<Dog>
var a = ... var b = ... var query = new {a, b}.Lift(p => ...; p.a; ...; p.b; ...; ....ToQuery<Dog>
public static class Func { public static TResult Lift<T1, TResult>(this T1 arg, Func<T1, TResult> func) { return func(arg); } }
sap978
zya369
6yrop
Оказывается в Controllable Query используется Lambda lifting.Исходный код
Выделяем формирование запроса в лямбду и делаем Lambda lifting
Функция Lift кране тривиальна