日期:2014-05-17  浏览次数:20512 次

为何EF查询时调用AsQueryable()会把所有的表数据都查询出来
本帖最后由 wd4072 于 2013-08-07 14:19:49 编辑

        public IQueryable<T> LoadPageEntities<S>(int pageSize, int pageIndex, out int total, Func<T, bool> whereLambda, Func<T, S> orderByLambda, bool isAsc)
        {
            var temp =db.CreateObjectSet<T>().Where<T>(whereLambda);
            total = temp.Count();

            //进行分页
            if (isAsc)
            {
                temp = temp.OrderBy<T, S>(orderByLambda)
                    .Skip<T>((pageIndex - 1) * pageSize)
                    .Take<T>(pageSize);
            }
            else
            {
                temp = temp.OrderByDescending(orderByLambda)
                   .Skip<T>((pageIndex - 1) * pageSize)
                   .Take<T>(pageSize);
            }

            return temp.AsQueryable();
        }




为什么会全表查询呢,哪位高手给小弟分析下,小弟不甚感激
MVC EF