linq海量数据
我用sql server 2005,里面有几十万行记录,不能一下把它们都读入内存,所以我想每次读取几条逐条处理,直至处理完全部记录,请问有什么好的方法。
------解决方案--------------------只要不使用非迟延操作符 如TOLIST等
数据就不会加载到内存
GOOGLE: LINQ 延迟查询
------解决方案--------------------当然利用 SKIP()结合 Take()方法也是可以达到你的需求的
------解决方案--------------------很明显,你可以使用 Linq To SQL,以便让数据直接在数据库系统内被处理。
或者使用存储过程。
------解决方案--------------------C# code
var q = (
from c in db.Customers
orderby c.ContactName
select c)
.Skip(50)
.Take(10);
ObjectDumper.Write(q);