示例#1
0
        public void Select_distinct_order_by()
        {
            var q = UtExtensions.Select <Home> (h => h.Town);

            Assert.AreEqual(1, q.SelectClause.Count);
            Assert.AreEqual("Town", q.SelectClause[0].Name);
            Assert.AreEqual("Town", q.SelectClause[0].Alias);

            q = UtExtensions.Select <Home> (h => new { Town = h.Town, Adress = h.Address });
            Assert.AreEqual(2, q.SelectClause.Count);
            Assert.AreEqual("Town", q.SelectClause[0].Name);

            Assert.IsFalse(q.Distinct);

            // check with distinct clause
            q = UtExtensions.Select <Home> (h => new { Town = h.Town, Adress = h.Address }, true);

            Assert.IsTrue(q.Distinct);

            q = UtExtensions.OrderBy <Home, decimal> (h => h.PriceInEuros);
            Assert.AreEqual("PriceInEuros", q.OrderByProperty);
            Assert.IsFalse(q.OrderByIsDescending);

            q = UtExtensions.OrderBy <Home, decimal> (h => h.PriceInEuros, true);
            Assert.AreEqual("PriceInEuros", q.OrderByProperty);
            Assert.IsTrue(q.OrderByIsDescending);
        }