/// <summary> /// Resolve LINQ expression into BsonExpression /// </summary> public BsonExpression GetExpression <T, K>(Expression <Func <T, K> > predicate) { var visitor = new LinqExpressionVisitor(this, predicate); var expr = visitor.Resolve(typeof(K) == typeof(bool)); LOG($"`{predicate.ToString()}` -> `{expr.Source}`", "LINQ"); return(expr); }
/// <summary> /// Resolve LINQ expression into BsonExpression /// </summary> public BsonExpression GetExtendExpression <T, K>(Expression <Func <T, K> > predicate) { var visitor = new LinqExpressionVisitor(this); return(visitor.Resolve(predicate, false, true)); }
/// <summary> /// Resolve LINQ expression into BsonExpression /// </summary> public BsonExpression GetExpression <T, K>(Expression <Func <T, K> > predicate) { var visitor = new LinqExpressionVisitor(this); return(visitor.Resolve(predicate, typeof(K) == typeof(bool), false)); }