/// <summary> /// Creates a new instance of the <see cref="ShapedQueryCompilingExpressionVisitor" /> class. /// </summary> /// <param name="dependencies">Parameter object containing dependencies for this class.</param> /// <param name="queryCompilationContext">The query compilation context object to use.</param> protected ShapedQueryCompilingExpressionVisitor( ShapedQueryCompilingExpressionVisitorDependencies dependencies, QueryCompilationContext queryCompilationContext) { Dependencies = dependencies; QueryCompilationContext = queryCompilationContext; _entityMaterializerInjectingExpressionVisitor = new EntityMaterializerInjectingExpressionVisitor( dependencies.EntityMaterializerSource, queryCompilationContext.QueryTrackingBehavior); _constantVerifyingExpressionVisitor = new ConstantVerifyingExpressionVisitor(dependencies.TypeMappingSource); if (queryCompilationContext.IsAsync) { _cancellationTokenParameter = Expression.MakeMemberAccess( QueryCompilationContext.QueryContextParameter, _cancellationTokenMemberInfo); } else { _cancellationTokenParameter = null !; } }
/// <summary> /// Creates a new instance of the <see cref="ShapedQueryCompilingExpressionVisitor" /> class. /// </summary> /// <param name="dependencies"> Parameter object containing dependencies for this class. </param> /// <param name="queryCompilationContext"> The query compilation context object to use. </param> protected ShapedQueryCompilingExpressionVisitor( [NotNull] ShapedQueryCompilingExpressionVisitorDependencies dependencies, [NotNull] QueryCompilationContext queryCompilationContext) { Check.NotNull(dependencies, nameof(dependencies)); Check.NotNull(queryCompilationContext, nameof(queryCompilationContext)); Dependencies = dependencies; QueryCompilationContext = queryCompilationContext; _entityMaterializerInjectingExpressionVisitor = new EntityMaterializerInjectingExpressionVisitor( dependencies.EntityMaterializerSource, queryCompilationContext.IsTracking, queryCompilationContext.PerformIdentityResolution); _constantVerifyingExpressionVisitor = new ConstantVerifyingExpressionVisitor(dependencies.TypeMappingSource); if (queryCompilationContext.IsAsync) { _cancellationTokenParameter = Expression.MakeMemberAccess( QueryCompilationContext.QueryContextParameter, _cancellationTokenMemberInfo); } }
public ShapedQueryCompilingExpressionVisitor(IEntityMaterializerSource entityMaterializerSource, bool trackQueryResults, bool async) { _entityMaterializerSource = entityMaterializerSource; TrackQueryResults = trackQueryResults; _entityMaterializerInjectingExpressionVisitor = new EntityMaterializerInjectingExpressionVisitor(entityMaterializerSource, trackQueryResults); Async = async; if (async) { _cancellationTokenParameter = Expression.MakeMemberAccess( QueryCompilationContext.QueryContextParameter, _cancellationTokenMemberInfo); } }
protected ShapedQueryCompilingExpressionVisitor( QueryCompilationContext queryCompilationContext, IEntityMaterializerSource entityMaterializerSource) { _entityMaterializerSource = entityMaterializerSource; TrackQueryResults = queryCompilationContext.TrackQueryResults; _entityMaterializerInjectingExpressionVisitor = new EntityMaterializerInjectingExpressionVisitor(entityMaterializerSource, TrackQueryResults); Async = queryCompilationContext.Async; if (Async) { _cancellationTokenParameter = Expression.MakeMemberAccess( QueryCompilationContext.QueryContextParameter, _cancellationTokenMemberInfo); } }
protected ShapedQueryCompilingExpressionVisitor( QueryCompilationContext queryCompilationContext, IEntityMaterializerSource entityMaterializerSource) { _entityMaterializerSource = entityMaterializerSource; IsTracking = queryCompilationContext.IsTracking; _entityMaterializerInjectingExpressionVisitor = new EntityMaterializerInjectingExpressionVisitor(entityMaterializerSource, IsTracking); IsAsync = queryCompilationContext.IsAsync; if (IsAsync) { _cancellationTokenParameter = Expression.MakeMemberAccess( QueryCompilationContext.QueryContextParameter, _cancellationTokenMemberInfo); } }
protected ShapedQueryCompilingExpressionVisitor( QueryCompilationContext queryCompilationContext, ShapedQueryCompilingExpressionVisitorDependencies dependencies) { Dependencies = dependencies; IsTracking = queryCompilationContext.IsTracking; _entityMaterializerInjectingExpressionVisitor = new EntityMaterializerInjectingExpressionVisitor( dependencies.EntityMaterializerSource, queryCompilationContext.IsTracking); IsAsync = queryCompilationContext.IsAsync; if (queryCompilationContext.IsAsync) { _cancellationTokenParameter = Expression.MakeMemberAccess( QueryCompilationContext.QueryContextParameter, _cancellationTokenMemberInfo); } }