Esempio n. 1
0
        public void ThenByDescending()
        {
            var expected = new Query <NonRelationEntity>(orderBy: new OrderBy <NonRelationEntity>(new Property <NonRelationEntity>("Id"), then: new OrderBy <NonRelationEntity>(new Property <NonRelationEntity>("Code"), OrderDirect.Desc)));

            var actual = Lt.Query <NonRelationEntity>().OrderBy(_ => _.Id).ThenByDescending(_ => _.Code).ToImmutable();

            Assert.Equal(expected, actual);
        }
Esempio n. 2
0
        public void OrderBy()
        {
            var expected = new Query <NonRelationEntity>(orderBy: new OrderBy <NonRelationEntity>(new Property <NonRelationEntity>("Id")));

            var actual = Lt.Query <NonRelationEntity>().OrderBy(_ => _.Id).ToImmutable();

            Assert.Equal(expected, actual);
        }
Esempio n. 3
0
        public void WhereWithEqualWithParameterName()
        {
            var expected = new Query <NonRelationEntity>(where : new EqualOperator(new Property <NonRelationEntity>(nameof(NonRelationEntity.Id)), new Parameter("Id")));

            var actual = Lt.Query <NonRelationEntity>().Where(_ => _.Id == Lt.Arg <int>("Id")).ToImmutable();

            Assert.Equal(expected, actual);
        }
Esempio n. 4
0
 public void ThenByDescendingWithoutOrderBy()
 {
     try
     {
         var actual = Lt.Query <NonRelationEntity>().OrderBy(_ => _.Id).ThenByDescending(_ => _.Code).ToImmutable();
         throw new Exception();
     }
     catch { }
 }
Esempio n. 5
0
        public void Setup()
        {
            _container = new Container();

            _dbConnection = new SqlConnectionFactory().Create();

            new global::LtQuery.ORM.DryIoc.Module().Register(_container);

            var tableRegistrator = _container.Resolve <global::LtQuery.ORM.ITableDefinitionRegistrator>();

            tableRegistrator.Register(() => new Tables.TestEntityDefinition());

            var resolver   = _container.Resolve <global::LtQuery.ORM.ITableDefinitionResolver>();
            var sqlBuilder = new SqlServerSqlBuilder(resolver);

            _connection = new LtConnection(resolver, sqlBuilder, _dbConnection);

            _query       = Lt.Query <TestEntity>().ToImmutable();
            _singleQuery = Lt.Query <TestEntity>().Where(_ => _.Id == Lt.Arg <int>()).ToImmutable();

            _connection.Select(_query);
            _connection.Single(_singleQuery, new { Id = 1 });
        }
Esempio n. 6
0
        public int LtQuery()
        {
            var accum = 0;

            using (var container = new Container())
            {
                new global::LtQuery.ORM.DryIoc.Module().Register(container);

                var tableRegistrator = container.Resolve <global::LtQuery.ORM.ITableDefinitionRegistrator>();
                tableRegistrator.Register(() => new LtQuery.Tables.TestEntityDefinition());

                var tableResolver = container.Resolve <global::LtQuery.ORM.ITableDefinitionResolver>();
                var sqlBuilder    = new SqlServerSqlBuilder(tableResolver);
                using (var dbConnection = new SqlConnectionFactory().Create())
                    using (var connection = new LtConnection(tableResolver, sqlBuilder, dbConnection))
                    {
                        var singleQuery = Lt.Query <TestEntity>().Where(_ => _.Id == Lt.Arg <int>()).ToImmutable();
                        var entity      = connection.Single(singleQuery, new { Id = 1 });
                        AddHashCode(ref accum, entity.Id);
                    }
                return(accum);
            }
        }