/// <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> protected CosmosQueryableMethodTranslatingExpressionVisitor( [NotNull] CosmosQueryableMethodTranslatingExpressionVisitor parentVisitor) : base(parentVisitor.Dependencies, subquery: true) { _model = parentVisitor._model; _sqlExpressionFactory = parentVisitor._sqlExpressionFactory; _sqlTranslator = parentVisitor._sqlTranslator; _projectionBindingExpressionVisitor = new CosmosProjectionBindingExpressionVisitor(_model, _sqlTranslator); }
/// <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 CosmosQueryableMethodTranslatingExpressionVisitor( IModel model, ISqlExpressionFactory sqlExpressionFactory, IMemberTranslatorProvider memberTranslatorProvider, IMethodCallTranslatorProvider methodCallTranslatorProvider) : base(subquery: false) { _model = model; _sqlExpressionFactory = sqlExpressionFactory; _sqlTranslator = new CosmosSqlTranslatingExpressionVisitor( model, sqlExpressionFactory, memberTranslatorProvider, methodCallTranslatorProvider); _projectionBindingExpressionVisitor = new CosmosProjectionBindingExpressionVisitor(_sqlTranslator); }
/// <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 CosmosQueryableMethodTranslatingExpressionVisitor( [NotNull] QueryableMethodTranslatingExpressionVisitorDependencies dependencies, [NotNull] IModel model, [NotNull] ISqlExpressionFactory sqlExpressionFactory, [NotNull] IMemberTranslatorProvider memberTranslatorProvider, [NotNull] IMethodCallTranslatorProvider methodCallTranslatorProvider) : base(dependencies, subquery: false) { _model = model; _sqlExpressionFactory = sqlExpressionFactory; _sqlTranslator = new CosmosSqlTranslatingExpressionVisitor( model, sqlExpressionFactory, memberTranslatorProvider, methodCallTranslatorProvider); _projectionBindingExpressionVisitor = new CosmosProjectionBindingExpressionVisitor(_model, _sqlTranslator); }