Linq To SQL分页失败后引发的思考
Skip查询需要数据标识列提供查询的根据,是否可以假设Skip是通过标识列的唯一性来逐一返回对象的呢? 修改数据库People表Prof,设置其ID为主键,(上面的数据库相应修改为)ALTER TABLE Prof
ADD CONSTRAINT PK_ID PRIMARY KEY (ID)
GO
再次运行,显示查询耗时:00:00:00.0478485
问题:
1.为什么两次查询的耗时相差那么大呢?(估计是个人机器以及代码问题:))
2.Skip是否通过主键的唯一性逐次返回查询对象?
总结:
SQLServer的执行效率是按照语义来执行的,也许Linq在性能上不一定和SQLDataAdapter等完全一样,但是在开发效率上,我们可以看出Linq的实现代码的简易性是相对较好的,只要克服其中的一些问题,相信Linq会为以后的数据查询提供更强大帮助!
备注:
Scott写了一系列Linq的介绍非常经典
王磊发表的文章中提到过了大量数据分页的实现,主要用的数据库为Northwind而相应的代码也完善。
Linq性能测试http://www.mbeller.de/2007/12/performance-comparison-between-linq.html
页:
[1]