Beispiel #1
0
        protected virtual Expression ExtractParameters([NotNull] Expression query, [NotNull] QueryContext queryContext)
        {
            Check.NotNull(query, nameof(query));
            Check.NotNull(queryContext, nameof(queryContext));

            return(ParameterExtractingExpressionVisitor
                   .ExtractParameters(query, queryContext, _evaluatableExpressionFilter, _logger));
        }
Beispiel #2
0
        /// <summary>
        ///     This is an internal API that supports the Entity Framework Core infrastructure and not subject to
        ///     the same compatibility standards as public APIs. It may be changed or removed without notice in
        ///     any release. You should only use it directly in your code with extreme caution and knowing that
        ///     doing so can result in application failures when updating to a new Entity Framework Core release.
        /// </summary>
        public virtual Expression ExtractParameters(
            [NotNull] Expression query,
            [NotNull] IParameterValues parameterValues,
            [NotNull] IDiagnosticsLogger <DbLoggerCategory.Query> logger,
            bool parameterize             = true,
            bool generateContextAccessors = false)
        {
            var visitor = new ParameterExtractingExpressionVisitor(
                _evaluatableExpressionFilter,
                parameterValues,
                _contextType,
                logger,
                parameterize,
                generateContextAccessors);

            return(visitor.ExtractParameters(query));
        }
        /// <summary>
        ///     This API supports the Entity Framework Core infrastructure and is not intended to be used
        ///     directly from your code. This API may change or be removed in future releases.
        /// </summary>
        protected virtual Expression ExtractParameters(
            [NotNull] Expression query,
            [NotNull] QueryContext queryContext,
            bool parameterize = true)
        {
            Check.NotNull(query, nameof(query));
            Check.NotNull(queryContext, nameof(queryContext));

            var visitor
                = new ParameterExtractingExpressionVisitor(
                      _evaluatableExpressionFilter,
                      queryContext,
                      _logger,
                      parameterize);

            return(visitor.ExtractParameters(query));
        }
        /// <summary>
        ///     This API supports the Entity Framework Core infrastructure and is not intended to be used
        ///     directly from your code. This API may change or be removed in future releases.
        /// </summary>
        public virtual Expression ExtractParameters(
            IDiagnosticsLogger <DbLoggerCategory.Query> logger,
            Expression query,
            IParameterValues parameterValues,
            bool parameterize             = true,
            bool generateContextAccessors = false)
        {
            Check.NotNull(query, nameof(query));
            Check.NotNull(parameterValues, nameof(parameterValues));

            var visitor
                = new ParameterExtractingExpressionVisitor(
                      _evaluatableExpressionFilter,
                      parameterValues,
                      logger,
                      parameterize,
                      generateContextAccessors);

            return(visitor.ExtractParameters(query));
        }