/// <summary> /// Adds the where. /// </summary> /// <param name="clause">The clause.</param> public void AddWhere(WhereClause clause) { if (!WhereClauses.Any()) { clause.LogicOperator = null; } WhereClauses.Add(clause); }
public void ApplyFiltering <T>(DocumentSessionBase session, Expression <Func <T, bool> > expression) { var queryExpression = session.Query <T>().Where(expression).Expression; var model = MartenQueryParser.Flyweight.GetParsedQuery(queryExpression); var where = model.BodyClauses.OfType <WhereClause>().Single(); WhereClauses.Add(where); CompileLocal(session); }
public override void AddWhere(ArrayWhereParameter whereParams) { WhereClauses.Add(new ArrayWhereClause(new AliasedWhereFieldReference(From.Source.Alias, new WhereFieldReference(whereParams.FieldName)), whereParams.Operand, whereParams.ParameterNames)); }
public override void AddWhere(BinaryWhereParameter whereParams) { WhereClauses.Add(new BinaryWhereClause(new AliasedWhereFieldReference(From.Source.Alias, new WhereFieldReference(whereParams.FieldName)), whereParams.Operand, whereParams.FirstParameterName, whereParams.SecondParameterName)); }