示例#1
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 CosmosQueryableMethodTranslatingExpressionVisitorFactory(
     QueryableMethodTranslatingExpressionVisitorDependencies dependencies,
     ISqlExpressionFactory sqlExpressionFactory,
     IMemberTranslatorProvider memberTranslatorProvider,
     IMethodCallTranslatorProvider methodCallTranslatorProvider)
 {
     Dependencies                  = dependencies;
     _sqlExpressionFactory         = sqlExpressionFactory;
     _memberTranslatorProvider     = memberTranslatorProvider;
     _methodCallTranslatorProvider = methodCallTranslatorProvider;
 }
 public RelationalSqlTranslatingExpressionVisitor(
     IModel model,
     ISqlExpressionFactory sqlExpressionFactory,
     IMemberTranslatorProvider memberTranslatorProvider,
     IMethodCallTranslatorProvider methodCallTranslatorProvider)
 {
     _model = model;
     _sqlExpressionFactory          = sqlExpressionFactory;
     _memberTranslatorProvider      = memberTranslatorProvider;
     _methodCallTranslatorProvider  = methodCallTranslatorProvider;
     _sqlVerifyingExpressionVisitor = new SqlTypeMappingVerifyingExpressionVisitor();
 }
 /// <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 CosmosSqlTranslatingExpressionVisitor(
     [NotNull] IModel model,
     [NotNull] ISqlExpressionFactory sqlExpressionFactory,
     [NotNull] IMemberTranslatorProvider memberTranslatorProvider,
     [NotNull] IMethodCallTranslatorProvider methodCallTranslatorProvider)
 {
     _model = model;
     _sqlExpressionFactory          = sqlExpressionFactory;
     _memberTranslatorProvider      = memberTranslatorProvider;
     _methodCallTranslatorProvider  = methodCallTranslatorProvider;
     _sqlVerifyingExpressionVisitor = new SqlTypeMappingVerifyingExpressionVisitor();
 }
示例#4
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 CosmosSqlTranslatingExpressionVisitor(
     [NotNull] QueryCompilationContext queryCompilationContext,
     [NotNull] ISqlExpressionFactory sqlExpressionFactory,
     [NotNull] IMemberTranslatorProvider memberTranslatorProvider,
     [NotNull] IMethodCallTranslatorProvider methodCallTranslatorProvider)
 {
     _queryCompilationContext = queryCompilationContext;
     _model = queryCompilationContext.Model;
     _sqlExpressionFactory          = sqlExpressionFactory;
     _memberTranslatorProvider      = memberTranslatorProvider;
     _methodCallTranslatorProvider  = methodCallTranslatorProvider;
     _sqlVerifyingExpressionVisitor = new SqlTypeMappingVerifyingExpressionVisitor();
 }
示例#5
0
        public RelationalSqlTranslatingExpressionVisitorDependencies(
            [NotNull] ISqlExpressionFactory sqlExpressionFactory,
            [NotNull] IMemberTranslatorProvider memberTranslatorProvider,
            [NotNull] IMethodCallTranslatorProvider methodCallTranslatorProvider)
        {
            Check.NotNull(sqlExpressionFactory, nameof(sqlExpressionFactory));
            Check.NotNull(memberTranslatorProvider, nameof(memberTranslatorProvider));
            Check.NotNull(methodCallTranslatorProvider, nameof(methodCallTranslatorProvider));

            SqlExpressionFactory         = sqlExpressionFactory;
            MemberTranslatorProvider     = memberTranslatorProvider;
            MethodCallTranslatorProvider = methodCallTranslatorProvider;
        }
 public MongoQueryableMethodTranslatingExpressionVisitorFactory(
     QueryableMethodTranslatingExpressionVisitorDependencies dependencies,
     ISqlExpressionFactory sqlExpressionFactory,
     IMemberTranslatorProvider memberTranslatorProvider,
     IMethodCallTranslatorProvider methodCallTranslatorProvider,
     IModel model
     )//ISqlExpressionFactory sqlExpressionFactory,
      //MongoSqlTranslatingExpressionVisitor sqlTranslator)
 {
     _dependencies         = dependencies;
     _sqlExpressionFactory = sqlExpressionFactory;
     _sqlTranslator        = new MongoSqlTranslatingExpressionVisitor(model, sqlExpressionFactory, memberTranslatorProvider, methodCallTranslatorProvider);
     //_sqlTranslator = sqlTranslator;
 }
 public CosmosQueryableMethodTranslatingExpressionVisitor(
     IModel model,
     ISqlExpressionFactory sqlExpressionFactory,
     IMemberTranslatorProvider memberTranslatorProvider,
     IMethodCallTranslatorProvider methodCallTranslatorProvider)
 {
     _sqlExpressionFactory = sqlExpressionFactory;
     _sqlTranslator        = new CosmosSqlTranslatingExpressionVisitor(
         model,
         sqlExpressionFactory,
         memberTranslatorProvider,
         methodCallTranslatorProvider);
     _projectionBindingExpressionVisitor = new CosmosProjectionBindingExpressionVisitor(_sqlTranslator);
 }
示例#8
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 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);
 }
示例#9
0
 /// <summary>
 ///     Clones this dependency parameter object with one service replaced.
 /// </summary>
 /// <param name="memberTranslatorProvider"> A replacement for the current dependency of this type. </param>
 /// <returns> A new parameter object with the given service replaced. </returns>
 public RelationalSqlTranslatingExpressionVisitorDependencies With([NotNull] IMemberTranslatorProvider memberTranslatorProvider)
 => new RelationalSqlTranslatingExpressionVisitorDependencies(SqlExpressionFactory, memberTranslatorProvider, MethodCallTranslatorProvider);