FQL (FlexQuery Language) parser for FlexQuery.NET — a SQL-inspired query syntax.
Install this package when you want to support FQL-style filter syntax in your API — a readable, SQL-inspired alternative to the native DSL. After registration, clients send FQL expressions in the filter (and related) parameters and they are parsed through the standard FlexQuery pipeline.
dotnet add package FlexQuery.NET.Parsers.FqlCall Fql.Register() once at startup, then select the FQL syntax globally or per request:
using FlexQuery.NET;
using FlexQuery.NET.Parsers.Fql;
Fql.Register(); // registers the FQL parser in the global parser registry
// Option A: set FQL as the application-wide default syntax
FlexQueryCore.Configure(options =>
{
options.DefaultQuerySyntax = QuerySyntax.Fql;
});
// Option B: choose FQL per request
options.QuerySyntax = QuerySyntax.Fql;GET /api/users?filter=Status = 'Active' AND Age >= 18&sort=Name asc&page=1&pageSize=20Status = 'Active'
Age >= 18
Status = 'Active' AND Age >= 18
Category = 'Electronics' OR Category = 'Books'
Name CONTAINS 'john'
Status IN ('Active', 'Pending')
DeletedAt IS NULL
Age BETWEEN 18 AND 30
- Full Parameter Support — Parses
filter,select,sort,aggregate, andhavingexpressions into the FlexQuery model - Supported Operators —
=,>=,>,<=,<,!=, plusIN,NOT IN,CONTAINS,STARTSWITH,ENDSWITH,LIKE,IS NULL,BETWEEN, and collection quantifiers (ANY,ALL,COUNT) - Familiar Keywords —
AND,OR,ASC,DESC, aggregate functionsSUM,AVG,MIN,MAX,COUNT, andASaliases - Integration — Registers into the global parser registry so FQL queries flow through the same validation and execution pipeline
- FlexQuery.NET — Core query engine
- FlexQuery.NET.Parsers.MiniOData — Alternative parser for OData syntax