 DataReader
ou DataSet ? eis a questão !!!
  
    DataReader
ou DataSet ? eis a questão !!!
DataReader ou DataSet ?  Será o DataReader melhor que o
DataSet ?  Será que existe um diferença significativa ?
Não é uma tarefa tão simples
como parece dizer quando usar uma ou outra classe , tudo vai
depender do contexto. 
Vou assumir que você já tenha
noções sobre essas duas classes e que o contexto sejam as aplicações
ASP.NET ( a coisa pode ser diferente em aplicações Windows Forms ). Com isto em mente segue abaixo uma relação de quando
usar DaReader ou DataSet :
Obs: Para ficar por dentro leia os artigos :
  - 
  VB.NET - 
  ADO.NET - uma visão geral IV : Objeto DataSet.
- 
  VB.NET _ 
  
  ADO.NET - Uma visão Geral I : 
  Objeto Connection - 
  DataReader
Situações quando o uso de DataReader
é recomendado :
    - Os dados
        com os quais você esta trabalhando precisam estar sempre
        atualizados , ou seja , você precisa de dados on-line em
        tempo real . Neste caso usar um DataReader é menos
        oneroso para o desempenho do seu sistema.
- Você
        precisa acessar dados individuais localizados a cada
        momento para atualizar o seu sistema.
- Você
        precisa apenas de um acesso onde os dados não sofrerão
        atualizações nem buscas e serão somente exibidos.( i.e
        uma conexão do tipo somente-leitura e
        somente-para-frente)
- Você terá
        que fazer repetidas chamadas a base de dados para obter
        pequenas porções de informações
Situações onde o uso de um DataSet
é recomendado:
    - Você esta
        criando um Web Service que utiliza os dados que você
        esta retornando como valores de retorno. Como um
        DataReader mantém uma conexão permanente com a fonte de
        dados ele não pode ser serializado em XML e assim não
        pode ser transmitido pela rede pelo consumidor do Web
        Service.
- Você
        precisa filtrar e ordernar seus dados.
- Você
        precisa interagir com os dados mais de uma vez na mesma
        requisição.
- Você
        precisa armazenar os dados que serão usados novamente
        por subsequentes requisições de páginas.
- Você
        precisa carregar e manipular dados XML em duas
        dimensões.
- A sua fonte
        de dados não é um banco de dados . Um DataSet pode
        carregar dados diretamente de um arquivo XML e
        interpretar o seu esquema dinamicamente.
Até mais !! 
