我有一个 Linq 查询,它从 SQL Server 返回很多结果,我想确保,我从数据库一次获取记录,然后简单地在页面内按需循环遍历记录而不访问数据库。
这是一个简单的查询:
Dim c1 = (From c2 In _db.CategoryRelationShip
Select c2)
现在我在页面的某个地方:
For Each item In c1
Next
然后再一次:
For Each item In c1
Next
这是否意味着在每个 For 循环中,我都会一次又一次地访问数据库?还是我的原始 Linq 检索了所有记录,而我只是循环遍历数组/结果?
我听说过 toList() 方法,所以我很困惑我是否需要它?...我的意思是如果我这样做:
Dim c1 = (From c2 In _db.CategoryRelationShip
Select c2).toList()