Exemple #1
0
        public void Select()
        {
            using (var context = DbContextFactory.GetDbContext())
            {
                //single
                var student = context.From <Student>()
                              .Where(a => a.Id == 19)
                              .Single();

                //subquery
                var id       = 0;
                var age      = 50;
                var subquery = new SubQuery <School>()
                               .Where(a => a.Id >= id)
                               .Select(a => a.Id);

                //Verify that subquery parameters are written to the current query
                var students2 = context.From <Student>()
                                .OrderBy(a => a.Age)
                                .Where(a => a.Id >= Operator.Any(subquery) && a.Age > age)
                                .Select();

                //Partial columns
                var students3 = context.From <Student>()
                                .Select(s => new
                {
                    s.Id,
                    s.Age
                });
            }
        }
Exemple #2
0
        public void Demo4_Subquery()
        {
            using (var context = DbContextFactory.GetDbContext())
            {
                //in where
                var subquery1 = new SubQuery <Student>()
                                .Where(a => a.Id <= 15)
                                .Select(s => s.Age);

                var student1 = context.From <Student>()
                               .Where(a => a.Age >= Operator.Any(subquery1))
                               .Select();

                //in columns
                var subquery2 = new SubQuery <School>()
                                .Where <Student, School>((a, b) => a.SchoolId == b.Id)
                                .Select(s => s.Name);


                var student2 = context.From <Student>()
                               .Select(s => new
                {
                    s.Id,
                    StudentName = s.Name,
                    SchoolName  = (string)subquery2   //just for build
                });
            }
        }
Exemple #3
0
        public void Select()
        {
            using (var context = DbContextFactory.GetDbContext())
            {
                try
                {
                    //single
                    var c       = Grade.A;
                    var student = context.From <Student>()
                                  .Where(a => !(a.IsDelete == false) && a.Age > 2)
                                  .Select();
                    //in
                    var students1 = context.From <Student>()
                                    .Where(a => Operator.In(a.Id, new[] { 1, 2 }))
                                    .Select();

                    //subquery
                    var id       = 0;
                    var age      = 50;
                    var subquery = new SubQuery <School>()
                                   .Where(a => a.Id >= id)
                                   .Select(a => a.Id);

                    //Verify that subquery parameters are written to the current query
                    var students2 = context.From <Student>()
                                    .OrderBy(a => a.Age)
                                    .Where(a => a.Id >= Operator.Any(subquery) && a.Age > age)
                                    .Select();

                    ////Partial columns
                    var students3 = context.From <Student>()
                                    .Select(s => new
                    {
                        s.Id,
                        s.Age
                    });
                }
                catch (Exception e)
                {
                    throw;
                }
            }
        }