public override Expression HandleOperation( QueryableFilterContext context, IFilterOperationField field, IValueNode value, object parsedValue) { Expression property = context.GetInstance(); return(FilterExpressionBuilder.In( property, context.RuntimeTypes.Peek().Source, parsedValue)); }
public static FilterScope <Expression> AddIsNullClosure( this QueryableFilterContext context) { var closure = new QueryableScope( context.RuntimeTypes.Peek(), "_s" + context.Scopes.Count, false); context.Scopes.Push(closure); context.GetLevel() .Enqueue( FilterExpressionBuilder.Equals(context.GetClosure().Parameter, null)); return(closure); }
public override Expression HandleOperation( QueryableFilterContext context, IFilterOperationField field, IValueNode value, object?parsedValue) { Expression property = context.GetInstance(); parsedValue = ParseValue(value, parsedValue, field.Type, context); if (parsedValue is null) { throw new InvalidOperationException(); } return(FilterExpressionBuilder.GreaterThan(property, parsedValue)); }