真爱无限的知识驿站

学习积累技术经验,提升自身能力

pkm的linq to Entities学习2

.Net Code

            using (testEntities TestEntity = new testEntities())
            {
                #region linq to entities 内容练习2
                #region 父子关系表查询
                /*
                var maxScorePerClass = from s in TestEntity.stuinfo
                                       group s by s.classID into s1
                                       select new
                                       {
                                           classid = s1.Key,
                                           stuinfo = from s2 in s1
                                                     where s2.score == s1.Max(p => p.score)
                                                     select s2
                                       };
                foreach (var sc in maxScorePerClass)  //stuinfo 为 IEnumerable<stuinfo> 类型
                {
                    Console.WriteLine("classID:{0}", sc.classid);
                    Console.WriteLine("每班最高分数:{0}", sc.stuinfo.First().score);
                }
                Console.WriteLine();
                 */
                #endregion
                #region 查询每班低于平均成绩的学生
                /*
                var LitThanAvgScorePerClass = from s in TestEntity.stuinfo
                                              group s by s.classID into s1
                                              select new
                                              {
                                                  classid = s1.Key,
                                                  stuinfo = from s2 in s1
                                                            where s2.score <= s1.Average(p => p.score)//修改此处,可查每班最低成绩、最高成绩等
                                                            select s2
                                              };
                //     Console.Clear();
                foreach (var sc in LitThanAvgScorePerClass)  //stuinfo 为 IEnumerable<stuinfo> 类型
                {
                    Console.WriteLine("每班低于平均分数-classID:{0}", sc.classid);
                    foreach (var stu in sc.stuinfo)
                    {
                        Console.WriteLine("分数:{0}", stu.score);
                    }
                }
                Console.WriteLine();
                 */
                #endregion
                #region 模糊查询---相当于like
                /*
                var querylike = from s in TestEntity.stuinfo
                                where s.username.Contains("pkm")  //相当于like '%pkm%'
                                select s;
                foreach (var s in querylike)
                {
                    Console.WriteLine(s.username);
                }
                Console.WriteLine();
                 */
                #endregion
                #region 编译查询--类似于函数
                /*
                var function = CompiledQuery.Compile((testEntities edm1, string user)//参数
                            => from s in edm1.stuinfo
                               where s.username == user
                               select s
                            );
                var stu001 = function(TestEntity, "pkm001");//调用编译查询
                foreach (var s in stu001)
                {
                    Console.WriteLine(s.username);
                }
                Console.WriteLine();
                 */
                #endregion
                #region any查询,相当于 in
                /*
                IQueryable<long> classIDs = TestEntity.classinfo.Select(c => c.classID);
                var inValues = from s in TestEntity.stuinfo
                               where classIDs.Any(id => id == s.classID)
                               select s;
                foreach (var s in inValues)
                {
                    Console.WriteLine(s.username);
                }
                Console.WriteLine(); 
                 */
                #endregion
                #region 插入数据--相当于insert
                /*
                var newStudent = new stuinfo()
                        {
                            username = "test0003",
                            userpwd = "test0003",
                            score = 95,
            

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

Copyright 2024-2027 pukuimin Rights Reserved.
粤ICP备17100155号