Implementing a DataReader Class for a Data Processing Extension

The DataReader object enables a client to retrieve a read-only, forward-only stream of data from a data source. Results are returned as the query executes and are stored in the network buffer on the client until you request them using the Read method of the DataReader class. To create a DataReader class, implement IDataReader and optionally implement IDataReaderExtension. Using a DataReader object increases application performance both by retrieving data as soon as it is available, rather than waiting for the entire results of the query to be returned, and (by default) storing only one row at a time in memory, reducing system overhead.

After creating an instance of your Command class, you create a DataReader object by calling Command.ExecuteReader to retrieve rows from the data source. The DataReader implementation must provide two basic capabilities: forward-only access over the result sets obtained by executing a command and access to the column types, names, and values within each row. Clients use the Read method of the DataReader object to obtain a row from the results of the query.

In Report Designer, your DataReader object is used to retrieve a list of fields as well as schema information about the result set. This is accomplished by implementing the GetName, GetValue, GetFieldType, and GetOrdinal methods of the IDataReader interface.

The IDataReaderExtension interface allows you to supply specific aggregation information about your result set. For a sample DataReader class implementation, see 파일 공유 데이터 처리 확장 프로그램 예제.

참고 항목

참조

Reporting Services Extension Library

관련 자료

Reporting Services Extensions
Implementing a Data Processing Extension

도움말 및 정보

SQL Server 2005 지원 받기