Class QueryContext<TProps>

Namespace: redb.Core.Query
Assembly: redb.Core.dll

Query context - contains all information about LINQ query

public class QueryContext<TProps> where TProps : class, new()

Inheritance

ObjectQueryContext<TProps>

Properties

CheckPermissions

public bool CheckPermissions { get; init; }

DistinctByField

Field for DISTINCT ON (field) - one object per each unique field value

public OrderingExpression? DistinctByField { get; set; }

DistinctByIsBaseField

true = DistinctByField is a base IRedbObject field

public bool DistinctByIsBaseField { get; set; }

Filter

public FilterExpression? Filter { get; set; }

IsDistinct

public bool IsDistinct { get; set; }

IsDistinctRedb

DISTINCT by base IRedbObject fields (Name, ValueLong, ParentId, etc.) excluding Id.

public bool IsDistinctRedb { get; set; }

IsEmpty

✅ NEW FLAG: Indicates that query should return empty result

public bool IsEmpty { get; set; }

Limit

public int? Limit { get; set; }

MaxDepth

public int? MaxDepth { get; init; }

MaxRecursionDepth

public int? MaxRecursionDepth { get; set; }

Offset

public int? Offset { get; set; }

Orderings

public List<OrderingExpression> Orderings { get; set; }

ParentId

public long? ParentId { get; init; }

ParentIds

public long[]? ParentIds { get; set; }

ProjectedFieldPaths

⭐ PROJECTION: Text field paths for SQL function search_objects_with_projection_by_paths

public List<string>? ProjectedFieldPaths { get; set; }

ProjectedStructureIds

⭐ PROJECTION: Structure IDs for optimized Props loading

public HashSet<long>? ProjectedStructureIds { get; set; }

PropsDepth

Maximum depth for loading nested RedbObject in Props.

public int? PropsDepth { get; set; }

SchemeId

public long SchemeId { get; init; }

SkipPropsLoading

PROJECTION: Skip Props loading completely.

public bool SkipPropsLoading { get; set; }

UseLazyLoading

Lazy loading flag for Props.

public bool? UseLazyLoading { get; set; }

UserId

public long? UserId { get; init; }

Methods

Clone()

Create a copy of context

public QueryContext<TProps> Clone()

Constructors