首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

return db.VideoCategories.Where(a => a.TypeId ==id).ToList();该如何解决

2013-01-26 
return db.VideoCategories.Where(a a.TypeId id).ToList()我照着别人的代码写,下边可以正常运行,但

return db.VideoCategories.Where(a => a.TypeId ==id).ToList();
我照着别人的代码写,下边可以正常运行,但是其中概率不清楚

db.VideoCategories.Where(a => a.TypeId ==id)  是一种什么类型?
为什么要ToList()?


        /// <summary>
        /// 返回一种类型(文章、文库、视频)(***我添加)
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static List<VideoCategories> GetOneType(int id)
        {
            using (var db = new WEBVODEntities())
            {
                return db.VideoCategories.Where(a => a.TypeId ==id).ToList();
            }
        }





[解决办法]
LINQ里的一种表达方式,就是过滤集合里的条件
最后ToList是将集合转成List格式
[解决办法]
你返回的是List<VideoCategories>
如果你返回IEnumerable<VideoCategories>就不需要ToList()

ToList()会立刻执行查询,将数据存入内存,和数据库脱离关系。
[解决办法]
db.VideoCategories应该是System.Data.Linq.Table<VideoCategories>类型的,
不符合你函数定义的返回类型,所以要转换成List类型,而且linq会立即执行查询
[解决办法]
引用:
引用:你返回的是List<VideoCategories>
如果你返回IEnumerable<VideoCategories>就不需要ToList()

ToList()会立刻执行查询,将数据存入内存,和数据库脱离关系。

db.VideoCategories属于List<>类型吗?  是不是where以后,就变成IEnumerab……

var x = db.VideoCategories;
将光标指向x可以看到。
如果是ef,是IQueryable<VideoCategories>,否则可也能是IEnumerable<VideoCategories>。
[解决办法]
引用:
自己顶下!!!


你看下就知道了。

热点排行