QueryEngine — Filtering, Sorting & Pagination
Granit.QueryEngine provides a declarative search engine: a strongly-typed
QueryDefinition<T> describes columns, filter groups, quick filters, and sort
options. The same definition drives the API query engine and the frontend data
grid — no duplication.
Package structure
Section titled “Package structure”DirectoryGranit.QueryEngine/ QueryDefinition, IQueryEngine, QueryRequest/Response abstractions
- Granit.QueryEngine.EntityFrameworkCore EF Core IQueryEngine implementation
- Granit.QueryEngine.Endpoints Generic search endpoint
| Package | Role | Depends on |
|---|---|---|
Granit.QueryEngine | IQueryEngine<T>, QueryDefinition<T>, QueryRequest, PagedResult<T> | Granit |
Granit.QueryEngine.EntityFrameworkCore | EF Core query executor | Granit.QueryEngine, Granit.Persistence |
Granit.QueryEngine.Endpoints | MapQueryEndpoint<T>() generic search endpoint | Granit.QueryEngine |
See also
Section titled “See also”- Persistence module — EF Core interceptors, query filters
- API & Http overview — HTTP infrastructure