예제 #1
0
        public IQuerySession QuerySession()
        {
            var parser = new MartenQueryParser();

            var session = new QuerySession(Schema, _serializer, new ManagedConnection(_connectionFactory, CommandRunnerMode.ReadOnly), parser, new NulloIdentityMap(_serializer));

            session.Logger = _logger.StartSession(session);

            return(session);
        }
예제 #2
0
        public IQuerySession QuerySession(SessionOptions options)
        {
            var parser = new MartenQueryParser();

            var session = new QuerySession(this, Schema, _serializer,
                                           new ManagedConnection(_connectionFactory, CommandRunnerMode.ReadOnly, options.IsolationLevel, options.Timeout), parser,
                                           new NulloIdentityMap(_serializer));

            session.Logger = _logger.StartSession(session);

            return(session);
        }
예제 #3
0
        public IQuerySession QuerySession(string tenantId)
        {
            var parser = new MartenQueryParser();

            var tenant     = Tenancy[tenantId];
            var connection = tenant.OpenConnection(CommandRunnerMode.ReadOnly);

            var session = new QuerySession(this,
                                           connection, parser,
                                           new NulloIdentityMap(Serializer), tenant);

            session.Logger = _logger.StartSession(session);

            return(session);
        }
예제 #4
0
        public IQuerySession QuerySession(SessionOptions options)
        {
            var parser = new MartenQueryParser();

            var tenant     = Tenancy[options.TenantId];
            var connection = tenant.OpenConnection(CommandRunnerMode.ReadOnly, options.IsolationLevel, options.Timeout);

            var session = new QuerySession(this,
                                           connection, parser,
                                           new NulloIdentityMap(Serializer), tenant);

            connection.BeginSession();

            session.Logger = _logger.StartSession(session);

            return(session);
        }
예제 #5
0
        public IQuerySession QuerySession(SessionOptions options)
        {
            var parser = new MartenQueryParser();

            var tenant = Tenancy[options.TenantId];

            var connection = buildManagedConnection(options, tenant, CommandRunnerMode.ReadOnly);

            var session = new QuerySession(this,
                                           connection, parser,
                                           new NulloIdentityMap(Serializer), tenant);

            connection.BeginSession();

            session.Logger = _logger.StartSession(session);

            return(session);
        }
예제 #6
0
        public IQuerySession QuerySession(string tenantId)
        {
            var tenant = Tenancy[tenantId];

            if (!Options.DefaultTenantUsageEnabled && tenant.TenantId == Marten.Storage.Tenancy.DefaultTenantId)
            {
                throw new DefaultTenantUsageDisabledException();
            }

            var parser = new MartenQueryParser();

            var connection = tenant.OpenConnection(CommandRunnerMode.ReadOnly);

            var session = new QuerySession(this,
                                           connection, parser,
                                           new NulloIdentityMap(Serializer, Options.Listeners), tenant);

            connection.BeginSession();

            session.Logger = _logger.StartSession(session);

            return(session);
        }
예제 #7
0
        public IQuerySession QuerySession()
        {
            var parser = new MartenQueryParser();

            return(new QuerySession(Schema, _serializer, _runnerForSession(), parser, new NulloIdentityMap(_serializer)));
        }