linq ef4.0 的联表 Include方法 代替联表操作

/// <summary>
        ///GetAllLesson 的测试
        ///</summary>
        [TestMethod()]
        public void GetAllLessonTest()
        {
           
            Repository<Lesson> target = new Repository<Lesson>();
            Repository<LessonNum> lessonNum = new Repository<LessonNum>(); 
            Repository<UserAccount> tt = new Repository<UserAccount>();
            ObjectSet<Lesson> actual = null;
            actual = target.FindQuerySet();
            var lessonNumSet = lessonNum.FindQuerySet();
            var user = tt.FindQuerySet();
            var newsList = actual.Include("LessonClass")
                                 .Include("LessonClass.LessonNum")
                                 .Include("LessonClass.LessonBooking")
                                 .Where(c => c.LessonID == 1)                            
                                 .Take(1).ToList();
            var v2 = lessonNumSet.Include("LessonClass").Include("LessonClass.Lesson").Where(c => c.ClassID == 2).ToList();
            var v3 = lessonNumSet.Include("LessonClass").Include("LessonClass.Lesson").Where(c => c.LessonClass.LessonID == 1).ToList();
            var v4 = lessonNumSet.Where(c => c.LessonClass.Lesson.AuditNum == 2).ToList();


            //var v5 = actual.Where(c => c.LessonClass.Where(d=>d.ClassID==1)  ).ToList();

            using (var db = new TaoXueDBEntities())
            {
                var v6 = (from a in db.Lesson where a.LessonID == 1 select a).ToList();
                var v7 = (from a in db.Lesson.Include("LessonClass") where a.LessonID == 1 select a).ToList();
                var v8 = (from a in db.Lesson.Include("LessonClass")
                         join b in db.UserAccount  on a.TeacherUIN equals b.UIN
                         where b.UIN == 30000
                         select a).ToList();

            }
            Assert.AreEqual(1, newsList.Count);
        }

原文地址:https://www.cnblogs.com/dudu837/p/1979951.html