Implementando uma classe DataReader para uma extensão de processamento de dados

O objeto DataReader permite que um cliente recupere um fluxo de dados somente leitura, somente encaminhamento de uma fonte de dados. Os resultados são retornados à medida que a consulta é executada e são armazenados no buffer de rede no cliente até que você solicite-os usando o método Read da classe DataReader. Para criar uma classe DataReader, implemente IDataReader e, opcionalmente, implemente IDataReaderExtension. O uso de um objeto DataReader aumenta o desempenho do aplicativo recuperando dados assim que eles estão disponíveis, em vez de aguardar que todos os resultados da consulta sejam retornados e (por padrão) armazenando somente uma linha por vez na memória, reduzindo a sobrecarga do sistema.

Depois de criar uma instância da classe Command, você cria um objeto DataReader chamando Command.ExecuteReader para recuperar linhas da fonte de dados. A implementação de DataReader deve fornecer duas funcionalidades básicas: acesso somente encaminhamento aos conjuntos de resultados obtidos pela execução de um comando e acesso aos tipos de coluna, nomes e valores de cada linha. Os clientes usam o método Read do objeto DataReader para obter uma linha dos resultados da consulta.

No Designer de Relatórios, o objeto DataReader é usado para recuperar uma lista de campos, além de informações de esquema sobre o conjunto de resultados. Isso é realizado pela implementação dos métodos GetName, GetValue, GetFieldType e GetOrdinal da interface IDataReader.

A interface de IDataReaderExtension permite que você ofereça informações específicas de agregação sobre o seu conjunto de resultados. Para obter uma implementação de exemplo da classe DataReader, consulte Amostras de produto do SQL Server Reporting Services.

Consulte Também

Extensões do Reporting Services
Implementar uma extensão de processamento de dados
Biblioteca de extensões do Reporting Services