IDataReaderExtension Interface
Provides a means of reading one or more forward-only streams of result sets obtained by executing a command at a data source, and is used by SQL Server Reporting Services to retrieve aggregation-specific information about a result set.
Namespace: Microsoft.ReportingServices.DataProcessing
Assemblies: Microsoft.ReportingServices.Interfaces (in Microsoft.ReportingServices.Interfaces.dll)
Microsoft.ReportingServices.SharePoint.UI.WebParts (in Microsoft.ReportingServices.SharePoint.UI.WebParts.dll)
Syntax
'Declaration
Public Interface IDataReaderExtension _
Inherits IDataReader, IDisposable
'Usage
Dim instance As IDataReaderExtension
public interface IDataReaderExtension : IDataReader,
IDisposable
public interface class IDataReaderExtension : IDataReader,
IDisposable
type IDataReaderExtension =
interface
interface IDataReader
interface IDisposable
end
public interface IDataReaderExtension extends IDataReader, IDisposable
The IDataReaderExtension type exposes the following members.
Properties
Name | Description | |
---|---|---|
AggregationFieldCount | Gets the number of fields by which the data is aggregated. | |
FieldCount | Gets the number of fields in the data reader. (Inherited from IDataReader.) | |
IsAggregateRow | Indicates whether the current row contains aggregate data. |
Top
Methods
Name | Description | |
---|---|---|
Dispose | (Inherited from IDisposable.) | |
GetFieldType | Gets the Type information corresponding to the type of object that is returned from GetValue. (Inherited from IDataReader.) | |
GetName | Gets the name of the field to find. (Inherited from IDataReader.) | |
GetOrdinal | Return the index of the named field. (Inherited from IDataReader.) | |
GetValue | Return the value of the specified field. (Inherited from IDataReader.) | |
IsAggregationField | Indicates whether the data is aggregated by the field with the given index. | |
Read | Advances the IDataReader to the next record. (Inherited from IDataReader.) |
Top
Remarks
The IDataReaderExtension interface enables you to implement an extension of the IDataReader interface, which you can use to provide a report server with aggregation information about your result set. For more information about DataReader classes, see Implementing a DataReader Class for a Data Processing Extension.
An application does not create an instance of the IDataReaderExtension interface directly, but creates an instance of a class that implements IDataReaderExtension.
Classes that implement IDataReaderExtension must also implement the required members, and typically define additional members to add provider-specific functionality. Because IDataReaderExtension inherits from IDataReaderExtension, you must also implement all of the IDataReaderExtension members as part of your DataReader class.
Changes made to a result set by another process or thread while data is being read may be visible to the user of a class that implements an IDataReaderExtension. However, the precise behavior is both provider and timing dependent.
Users do not create an instance of a DataReader class directly. Instead, they obtain the DataReader through the ExecuteReader method of the Command object. Therefore, you should mark DataReader constructors as internal.