ASP.NET 2.0 – 善用DataSourceMode属性

SqlDataSource控件的DataSourceMode属性决定所提取的数据要如何维护。

 

DataSourceMode属性的默认值是DataSet,此表示从数据库提取而来的结果集会储存在服务器内存内的一个DataSet对象中,如果您使用SqlDataSource作为GridView等控件的数据来源,并且要在GridView控件中进行排序、筛选与分页等处理,则SqlDataSourceDataSourceMode属性一定要设定成DataSet

 

然而在另外一方面,如果SqlDataSource所提取的数据仅仅是要作为DropDownListListBox等控件的选项,而不需要进行排序、筛选与分页等处理,则SqlDataSourceDataSourceMode属性应该要设定成DataReader,如此才能降低资源的耗用。毕竟在这种时候使用数据集(DataSet)根本就是杀鸡用牛刀。

 

一旦您将DataSourceMode属性设定成DataReader,数据会通过一个IDataReader对象(亦即顺向且只读的数据指针)来提取,结果集将不会储存在服务器的内存中。

 

如果您对数据集模型与数据命令模型的特色与差异有清楚的认识,相信应该可以知道何时该使用DataSet,而何时又该使用DataReader

posted on 2006-12-18 09:55  章立民研究室  阅读(2450)  评论(1编辑  收藏  举报

导航