Exemple #1
0
        public void Where()
        {
            var query = new SQLQuery<Order>()
                .From
                    .InnerJoin<Customer>(x => x.CustomerID, x => x.ID)
                    .LeftOuterJoin<OrderItem>(x => x.ID, x => x.OrderID, false)
                .Where.Equal<Customer>(x => x.Name, "Tim")
                    .Or
                    .START
                        .Equal<Customer, string>(x => x.Name, "Julia")
                        .And
                        .Equal(x => x.ID, 5)
                    .END
                .Return();

            QueryStatement statement = query.Build();

            Assert.AreEqual(3, statement.Parameters.Length);
        }
Exemple #2
0
        public void Select()
        {
            var query = new SQLQuery<Order>()
                .Select.Add(x => x.CustomerID).Add(x => x.OrderDate)
                .Return();

            string sql = query.Build().SQL;
            Assert.IsTrue(sql.Contains("a.[CustomerID]"));
            Assert.IsTrue(sql.Contains("a.[OrderDate]"));
        }
Exemple #3
0
        public void LeftJoin()
        {
            var query = new SQLQuery<Order>()
                .From.InnerJoin<Customer>(x => x.CustomerID, x => x.ID, false)
                    .LeftOuterJoin<OrderItem>(x => x.ID, x => x.OrderID)
                    .LeftOuterJoin<OrderItem, Product, int>(x => x.ProductID, x => x.ID)
                .Return();

            QueryStatement statement = query.Build();

            Assert.IsTrue(statement.SQL.Contains("LEFT OUTER JOIN"));
        }
Exemple #4
0
        public void OrderBy()
        {
            var query = new SQLQuery<Order>()
                .From
                    .InnerJoin<Customer>(x => x.CustomerID, x => x.ID)
                    .LeftOuterJoin<OrderItem>(x => x.ID, x => x.OrderID, false)
                .OrderBy.Ascending<Customer>(x => x.Name)
                    .Descending(x => x.OrderDate)
                .Return();

            string sql = query.Build().SQL;
            Assert.IsTrue(sql.Contains("b.[Name]"));
            Assert.IsTrue(sql.Contains("a.[OrderDate] DESC"));
        }
Exemple #5
0
        public void InnerJoin()
        {
            var query = new SQLQuery<Order>()
                .From
                    .InnerJoin<Customer>(x => x.CustomerID, x => x.ID)
                .Return();

            QueryStatement statement = query.Build();
        }