Namespace JsonApiDotNetCore.Queries
Classes
- ExpressionInScope
Represents an expression coming from query string. The scope determines at which depth in the IResourceGraph to apply its expression.
- FieldSelection
Provides access to sparse fieldsets, per resource type. There's usually just a single resource type, but there can be multiple in case an endpoint for an abstract resource type returns derived types.
- FieldSelectors
A data structure that contains which fields (attributes and relationships) to retrieve, or empty to retrieve all. In the case of a relationship, it contains the nested query constraints.
- QueryLayer
A nested data structure that contains QueryExpression constraints per resource type.
- QueryLayerComposer
Takes scoped expressions from IQueryConstraintProviders and transforms them.
- SparseFieldSetCache
Takes sparse fieldsets from IQueryConstraintProviders and invokes OnApplySparseFieldSet(SparseFieldSetExpression?) on them.
Interfaces
- IEvaluatedIncludeCache
Provides in-memory storage for the evaluated inclusion tree within a request. This tree is produced from query string and resource definition callbacks. The cache enables the serialization layer to take changes from OnApplyIncludes(IImmutableSet<IncludeElementExpression>) into account.
- IPaginationContext
Tracks values used for top-level pagination, which is a combined effort from options, query string parsing, resource definition callbacks and fetching the total number of rows.
- IQueryConstraintProvider
Provides constraints (such as filters, sorting, pagination, sparse fieldsets and inclusions) to be applied on a data set.
- IQueryLayerComposer
Takes scoped expressions from IQueryConstraintProviders and transforms them.
- ISparseFieldSetCache
Takes sparse fieldsets from IQueryConstraintProviders and invokes OnApplySparseFieldSet(SparseFieldSetExpression?) on them.
Enums
- TopFieldSelection
Indicates how to override sparse fieldset selection coming from constraints.