public EntityPersister(InternalContext context) { this.context = context; Database = context.Database; entityQueryProvider = new EntityQueryProvider(context); queryable = new QueryProvider(entityQueryProvider); environment = context.Environment; }
/// <summary> /// 使用 <see cref="IDatabase"/> 对象初始化 <see cref="T:Lord.Data.Entity.EntityPersister`1"/> 类的新实例。 /// </summary> /// <param name="database">一个 <see cref="IDatabase"/> 对象。</param> public EntityPersister(IDatabase database) { Database = database; context = new InternalContext(database); entityQueryProvider = new EntityQueryProvider(context); queryable = new QueryProvider(entityQueryProvider); environment = context.Environment; }
/// <summary> /// 使用实例名初始化 <see cref="T:Lord.Data.Entity.EntityPersister`1"/> 类的新实例。 /// </summary> /// <param name="instanceName">实例名。</param> public EntityPersister(string instanceName = null) { metadata = EntityMetadataUnity.GetEntityMetadata(GetEntityType()); context = new InternalContext(instanceName); Database = context.Database; entityQueryProvider = new EntityQueryProvider(context); queryable = new QueryProvider(entityQueryProvider); entityQueryProvider.InitializeInstanceName(instanceName); environment = context.Environment; }
protected override Expression VisitConstant(ConstantExpression constantExpression) { if (_entityQueryProvider == null) { _entityQueryProvider = (constantExpression.Value as IQueryable)?.Provider as IEntityQueryProvider; } return(constantExpression); }
/// <summary> /// 初始化 <see cref="QueryProvider"/> 类的新实例。 /// </summary> /// <param name="provider"></param> public QueryProvider(IEntityQueryProvider provider) { entityQueryProvider = provider; }
public EntityQueryable([NotNull] IEntityQueryProvider provider, [NotNull] Expression expression) : base( Check.NotNull(provider, nameof(provider)), Check.NotNull(expression, nameof(expression))) { }
public EntityQueryable([NotNull] IEntityQueryProvider provider) : base(Check.NotNull(provider, nameof(provider))) { }
private static EntityQueryable <TResult> _CreateEntityQueryable <TResult>(IEntityQueryProvider entityQueryProvider) => new EntityQueryable <TResult>(entityQueryProvider);
private NavigationRewritingExpressionVisitor( EntityQueryModelVisitor queryModelVisitor, IEntityQueryProvider entityQueryProvider) : this(queryModelVisitor) { _entityQueryProvider = entityQueryProvider; }