Class QueryClauseBuilderContext
- Namespace
- JsonApiDotNetCore.Queries.QueryableBuilding
- Assembly
- JsonApiDotNetCore.dll
Immutable contextual state for *ClauseBuilder types.
[PublicAPI]
public sealed class QueryClauseBuilderContext
- Inheritance
-
QueryClauseBuilderContext
- Inherited Members
Constructors
QueryClauseBuilderContext(Expression, ResourceType, Type, IReadOnlyModel, LambdaScopeFactory, LambdaScope, IQueryableBuilder, object?)
public QueryClauseBuilderContext(Expression source, ResourceType resourceType, Type extensionType, IReadOnlyModel entityModel, LambdaScopeFactory lambdaScopeFactory, LambdaScope lambdaScope, IQueryableBuilder queryableBuilder, object? state)
Parameters
sourceExpressionresourceTypeResourceTypeextensionTypeTypeentityModelIReadOnlyModellambdaScopeFactoryLambdaScopeFactorylambdaScopeLambdaScopequeryableBuilderIQueryableBuilderstateobject
Properties
EntityModel
The Entity Framework Core entity model.
public IReadOnlyModel EntityModel { get; }
Property Value
ExtensionType
The extension type to generate calls on, typically Queryable or Enumerable.
public Type ExtensionType { get; }
Property Value
LambdaScope
The lambda expression currently in scope.
public LambdaScope LambdaScope { get; }
Property Value
LambdaScopeFactory
Used to produce unique names for lambda parameters.
public LambdaScopeFactory LambdaScopeFactory { get; }
Property Value
QueryableBuilder
The outer driver for building query clauses.
public IQueryableBuilder QueryableBuilder { get; }
Property Value
ResourceType
The resource type for Source.
public ResourceType ResourceType { get; }
Property Value
Source
The source expression to append to.
public Expression Source { get; }
Property Value
State
Enables to pass custom state that you'd like to transfer between calls.
public object? State { get; }
Property Value
Methods
WithLambdaScope(LambdaScope)
public QueryClauseBuilderContext WithLambdaScope(LambdaScope lambdaScope)
Parameters
lambdaScopeLambdaScope
Returns
WithSource(Expression)
public QueryClauseBuilderContext WithSource(Expression source)
Parameters
sourceExpression