Exemple #1
0
        void Test2()
        {
            Users     user  = new Users();
            UserRoles roles = new UserRoles()
            {
                RoleName = "role1"
            };

            OQL q2 = new OQL(user);

            q2.InnerJoin(roles).On(user.RoleID, roles.ID);

            OQLCompare cmp       = new OQLCompare(q2);
            OQLCompare cmpResult =
                (
                    cmp.Property(user.UserName) == "ABC" &
                    cmp.Comparer(user.Password, "=", "111") &
                    cmp.EqualValue(roles.RoleName)
                )
                |
                (
                    (cmp.Comparer(user.UserName, "=", "CDE") &
                     cmp.Property(user.Password) == "222" &
                     cmp.Comparer(roles.RoleName, "like", "%Role2")
                    )
                    |
                    (cmp.Property(user.LastLoginTime) > DateTime.Now.AddDays(-1))
                )
            ;

            q2.Select().Where(cmpResult);
            Console.WriteLine("OQL by OQLCompare Test:\r\n{0}", q2);
            Console.WriteLine(q2.PrintParameterInfo());
        }
Exemple #2
0
        public static void 简单查询()
        {
            List <SODUser> result = null;

            //方式 params
            SODUser user = new SODUser()
            {
                LogName = "zhang san"
            };
            OQL q = OQL.From(user)
                    .Select()
                    .Where(user.LogName)
                    .END;

            result = EntityQuery <SODUser> .QueryList(q);

            //方式 OQLCompare
            SODUser    user2      = new SODUser();
            OQL        q2         = OQL.From(user2);
            OQLCompare oqlCompare = new OQLCompare(q2);

            oqlCompare.Comparer(user2.ID, ">", 0);

            //OQLCompare oqlCompare2 = new OQLCompare(user2).Comparer(user2.ID, OQLCompare.CompareType.Greater, 0);
            //q2 = q2.Select().Where(oqlCompare2).END;

            q2     = q2.Select().Where(oqlCompare).END;
            result = EntityQuery <SODUser> .QueryList(q2);
        }
Exemple #3
0
        OQLCompare CreateCondition(OQLCompare cmp, Users user)
        {
            OQLCompare cmpResult = null;

            if (user.NickName != "")
            {
                //cmpResult = cmp.Property(user.AddTime) > new DateTime(2013, 2, 1);
                // cmpResult = cmp.EqualValue(user.NickName);//下面一行建议用当前行的写法
                cmpResult = cmp.Comparer(user.NickName, "=", user.NickName);
            }
            if (user.ID > 0)
            {
                cmpResult = cmpResult & cmp.Property(user.UserName) == "ABC"
                            & cmp.Comparer(user.Password, "=", "111");
            }
            return(cmpResult);
        }
Exemple #4
0
        OQLCompare CreateCondition(OQLCompare cmp, CustomModel custom)
        {
            OQLCompare cmpResult = null;

            if (custom.CustomName != "")
            {
                cmpResult = cmp.Comparer(custom.CustomName, OQLCompare.CompareType.Like, "%" + custom.CustomName + "%");
            }
            return(cmpResult);
        }
Exemple #5
0
        OQLCompare CreateCondition(OQLCompare cmp, ProductTypeModel ProductType)
        {
            OQLCompare cmpResult = null;

            if (ProductType.ProductTypeName != "")
            {
                cmpResult = cmp.Comparer(ProductType.ProductTypeName, OQLCompare.CompareType.Like, "%" + ProductType.ProductTypeName + "%");
            }
            return(cmpResult);
        }
Exemple #6
0
        static void UpdateTest()
        {
            LT_Users userCmp = new LT_Users()
            {
                Authority = "admin", IsEnable = true, Remarks = "add"
            };
            // LT_Users userQ = new LT_Users();
            //OQLCompare cmp = new OQLCompare(userCmp);
            //OQL q = new OQL(userQ);
            OQL        q   = new OQL(userCmp);
            OQLCompare cmp = new OQLCompare(q);

            cmp = cmp.Comparer(userCmp.ID, "in", new int[] { 1, 2, 3 })
                  & cmp.Comparer(userCmp.LastLoginIP, "=", "127.0.0.1");
            //------分界线-------

            q.Update(userCmp.Authority, userCmp.IsEnable, userCmp.Remarks).Where(cmp);

            Console.WriteLine("update test:{0}\r\n{1}", q, q.PrintParameterInfo());
        }
Exemple #7
0
        OQLCompare CreateCondition(OQLCompare cmp, Users user)
        {
            Users testUser = new Users {
                NickName = user.NickName, ID = user.ID
            };

            OQLCompare cmpResult = null;

            if (testUser.NickName != "")
            {
                cmpResult = cmp.Comparer(user.NickName, "=", user.NickName);
            }
            // 上面一行,也可以采用这样的写法: cmpResult = cmp.EqualValue(user.NickName);
            if (testUser.ID > 0)
            {
                cmpResult = cmpResult & cmp.Comparer(user.ID, "=", user.ID);
            }
            else
            {
                cmpResult = cmpResult & cmp.Comparer(user.UserName, "=", "zhang san")
                            & cmp.Comparer(user.Password, "=", "pwd111");
            }
            return(cmpResult);
        }
Exemple #8
0
        void TestOQL()
        {
            //假如GoodsBaseInfo 对象的实例info 是长生命周期的,那么应该使用下面的方式使用OQL和OQLCompare
            GoodsBaseInfo info = new GoodsBaseInfo();

            using (OQL q = new OQL(info))
            {
                OQLCompare cmp = new OQLCompare(info);
                q.Select(info.GoodsName).Where(cmp.Comparer(info.SerialNumber, "=", "123456"));
                string sql = q.ToString();
                cmp.Dispose();
            }

            DisplayMemory();
        }