我们在之前的一篇文章提到如何善用「善用 DataSourceMode 属性」(http://www.cnblogs.com/liminzhang/archive/2006/12/18/595332.html),引发了不少回响,大家开始思索应该在 Web Form 网页中应该使用 DataSet 或 DataReader 作为实质的数据来源。
在此我们进一步于图表1中列示出使用 DataReader 与 DataSet 的优劣之处。在一般的状况下,DataReader 的速度不仅比 DataSet 来得快,在 IIS 服务器上所使用的内存也较少。我们的建议是,如果您的数据来源控件只是用来填入控件的清单成为其选项,亦或是您的数据绑定控件并不需要提供排序或分页功能的话,则应该使用 DataReader。反之,如果您的数据绑定控件需要提供排序或分页功能的话,则必须使用 DataSet 并承担其各项负面效应。
DataSourceMode属性
优点
缺点
DataReader
速度较快
不支持快取、分页与动态排序。
DataSet
支持快取、分页与动态排序
速度较慢