为数据处理扩展插件实现 DataReader 类

DataReader 对象使客户端可以从数据源检索只读、只进的数据流。结果作为查询执行返回,并且存储于客户端上的网络缓冲区中,直到您使用 DataReader 类的 Read 方法请求它们。若要创建 DataReader 类,应实现 IDataReader 并可以选择实现 IDataReaderExtension。使用 DataReader 对象可以从多方面提高应用程序性能,包括可以在数据可用时立刻检索数据,而非等待返回整个查询结果,以及在内存中的某一时刻只存储一行(默认情况下),从而降低系统开销。

在创建 Command 类的某一实例后,通过调用 Command.ExecuteReader 创建一个 DataReader 对象,以便从数据源检索行。DataReader 实现必须提供两个基本的功能:对通过执行某一命令获取的结果集能够进行只进访问,以及能够访问每一行内的列类型、名称和值。客户端使用 DataReader 对象的 Read 方法可以从查询的结果获取某一行。

在报表设计器中,DataReader 对象用于检索字段列表以及与结果集有关的架构信息。这是通过实现 IDataReader 接口的 GetNameGetValueGetFieldTypeGetOrdinal 方法实现的。

IDataReaderExtension 接口可用于提供与结果集有关的特定聚合信息。有关示例 DataReader 类实现,请参阅 SQL Server Reporting Services Product Samples(SQL Server Reporting Services 产品示例)。