Example #1
0
        protected virtual void OptimizeQueryModel([NotNull] QueryModel queryModel)
        {
            Check.NotNull(queryModel, nameof(queryModel));

            _queryOptimizer.Optimize(QueryCompilationContext.QueryAnnotations, queryModel);

            _navigationRewritingExpressionVisitorFactory.Create(this)
            .Rewrite(queryModel);

            queryModel.TransformExpressions(_subQueryMemberPushDownExpressionVisitor.Visit);

            QueryCompilationContext.Logger
            .LogDebug(
                CoreLoggingEventId.OptimizedQueryModel,
                () => CoreStrings.LogOptimizedQueryModel(queryModel));
        }