Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O processamento de dados tradicionalmente depende principalmente de um modelo de duas camadas baseado em conexão. À medida que o processamento de dados usa cada vez mais arquiteturas de várias camadas, os programadores estão mudando para uma abordagem desconectada para fornecer melhor escalabilidade para seus aplicativos.
Componentes do ADO.NET
Os dois principais componentes de ADO.NET para acessar e manipular dados são os provedores de dados do .NET Framework e o DataSet.
Provedores de dados do .NET Framework
Os Provedores de Dados .NET Framework são componentes que foram criados explicitamente para manipulação de dados, e o rápido acesso a dados apenas de encaminhamento e somente leitura. O Connection objeto fornece conectividade a uma fonte de dados. O Command objeto permite o acesso a comandos de banco de dados para retornar dados, modificar dados, executar procedimentos armazenados e enviar ou recuperar informações de parâmetro.
DataReader fornece um fluxo de dados de alto desempenho a partir da fonte de dados. Por fim, o DataAdapter fornece a ponte entre o objeto DataSet e a fonte de dados.
DataAdapter usa objetos Command para executar comandos SQL na fonte de dados para carregar o DataSet com dados e reconciliar as alterações feitas nos dados no DataSet de volta para a fonte de dados. Para obter mais informações, consulte provedores de dados do .NET Framework e recuperação e modificação de dados em ADO.NET.
O Conjunto de Dados
O ADO.NET DataSet foi projetado explicitamente para acesso a dados independentemente de qualquer fonte de dados. Como resultado, ele pode ser usado com várias e diferentes fontes de dados, usadas com dados XML ou usadas para gerenciar dados locais para o aplicativo. O DataSet contém uma coleção de um ou mais objetos DataTable que consistem em linhas e colunas de dados e também informações de chave primária, chave estrangeira, restrição e relação sobre os dados nos objetos DataTable. Para obter mais informações, consulte DataSets, DataTables e DataViews.
O diagrama a seguir ilustra a relação entre um provedor de dados do .NET Framework e um DataSet.
arquitetura de ADO.NET
Escolhendo um DataReader ou um DataSet
Quando você decidir se seu aplicativo deve usar um DataReader (consulte Recuperando dados usando um DataReader) ou um DataSet (consulte DataSets, DataTables e DataViews), considere o tipo de funcionalidade que seu aplicativo requer. Use um DataSet para fazer o seguinte:
Armazene dados em cache localmente em seu aplicativo para que você possa manipulá-los. Se você precisar ler apenas os resultados de uma consulta, será
DataReadera melhor opção.Dados remotos entre camadas de rede ou de um serviço web baseado em XML.
Interaja com dados dinamicamente, como associar a um controle do Windows Forms ou combinar e relacionar dados de várias fontes.
Execute um processamento extensivo em dados sem a necessidade de uma conexão aberta com a fonte de dados, o que libera a conexão a ser usada por outros clientes.
Se você não precisar da funcionalidade fornecida pelo DataSet, poderá melhorar o desempenho do aplicativo usando o DataReader para retornar os dados apenas para encaminhamento e somente leitura. Embora o DataAdapter use o DataReader para preencher o conteúdo de um DataSet (consulte Populando um Conjunto de Dados de um DataAdapter), ao usar o DataReader, você pode aumentar o desempenho, pois economizará a memória que seria consumida pelo DataSet e evitará o processamento necessário para criar e preencher o conteúdo do DataSet.
LINQ to DataSet
O LINQ to DataSet fornece recursos de consulta e validação de tipos em tempo de compilação sobre dados armazenados em cache em um objeto DataSet. Ele permite que você escreva consultas em uma das linguagens de desenvolvimento do .NET Framework, como C# ou Visual Basic. Para obter mais informações, consulte LINQ to DataSet.
LINQ to SQL
O LINQ to SQL dá suporte a consultas em um modelo de objeto mapeado para as estruturas de dados de um banco de dados relacional sem usar um modelo conceitual intermediário. Cada tabela é representada por uma classe separada, acoplando firmemente o modelo de objeto ao esquema de banco de dados relacional. LINQ to SQL converte consultas integradas à linguagem no modelo de objeto em Transact-SQL e as envia para o banco de dados para execução. Quando o banco de dados retorna os resultados, LINQ para SQL converte os resultados de volta em objetos. Para obter mais informações, consulte LINQ to SQL.
ADO.NET Entity Framework
O ADO.NET Entity Framework foi projetado para permitir que os desenvolvedores criem aplicativos de acesso a dados programando em um modelo de aplicativo conceitual em vez de programar diretamente em um esquema de armazenamento relacional. A meta é diminuir a quantidade de código e manutenção necessária para aplicativos orientados a dados. Para obter mais informações, consulte ADO.NET Entity Framework.
Serviços de Dados do WCF
Os Serviços de Dados do WCF são usados para implantar serviços de dados na Web ou em uma intranet. Os dados são estruturados como entidades e relações de acordo com as especificações do Modelo de Dados de Entidade. Os dados implantados nesse modelo podem ser endereçáveis pelo protocolo HTTP padrão. Para obter mais informações, consulte WCF Data Services 4.5.
XML e ADO.NET
ADO.NET aproveita o poder do XML para fornecer acesso desconectado aos dados. ADO.NET foi projetado lado a lado com as classes XML no .NET Framework; ambos são componentes de uma única arquitetura.
ADO.NET e as classes XML no .NET Framework convergem no objeto DataSet. Pode DataSet ser preenchido com dados de uma fonte XML, seja um arquivo ou um fluxo XML. O DataSet pode ser escrito como XML compatível com o World-Wide Web Consortium (W3C), que inclui seu esquema como esquema de definição de linguagem de esquema XML (XSD), independentemente da fonte dos dados no DataSet. Devido ao formato de serialização nativo do DataSet, que é XML, ele é um excelente meio para transferir dados entre camadas, fazendo do DataSet uma escolha ideal para comunicação remota de dados e contexto de esquema para e de um serviço Web XML. Para obter mais informações, consulte Documentos E Dados XML.