Compartilhar via


ADO.NET DataSets

O DataSet objeto é central para dar suporte a cenários de dados distribuídos e desconectados com ADO.NET. O DataSet é uma representação de dados residente na memória que fornece um modelo de programação relacional consistente, independentemente da fonte de dados. Ele pode ser usado com várias e diferentes fontes de dados, com dados XML ou para gerenciar dados locais para o aplicativo. O DataSet representa um conjunto completo de dados, incluindo tabelas, restrições e relações relacionadas entre as tabelas. A ilustração a seguir mostra o modelo de objeto DataSet .

Gráfico do ADO.Net
Modelo de objeto DataSet

Os métodos e objetos em um DataSet são consistentes com aqueles no modelo de banco de dados relacional.

O Conjunto de Dados também pode persistir e recarregar seu conteúdo como XML e seu esquema como esquema XSD (linguagem de definição de esquema XML). Para obter mais informações, consulte Como usar XML em um Conjunto de Dados.

A Coleção de DataTables

Um Conjunto de Dados ADO.NET contém uma coleção de zero ou mais tabelas representadas por DataTable objetos. O DataTableCollection contém todos os objetos DataTable em um DataSet.

Uma DataTable é definida no System.Data namespace e representa uma única tabela de dados residentes em memória. Ele contém uma coleção de colunas representadas por um DataColumnCollection, e restrições representadas por um ConstraintCollection, que juntos definem o esquema da tabela. Um DataTable também contém uma coleção de linhas representadas pelo DataRowCollection. que contém os dados na tabela. Juntamente com seu estado atual, um DataRow mantém suas versões atuais e originais para identificar alterações nos valores armazenados na linha.

A classe DataView

Um DataView permite que você crie diferentes exibições dos dados armazenados em uma DataTablefuncionalidade que geralmente é usada em aplicativos de associação de dados. Usando um DataView, você pode expor os dados em uma tabela com ordens de classificação diferentes e pode filtrar os dados por estado de linha ou com base em uma expressão de filtro. Para obter mais informações, consulte DataViews.

O DataRelationCollection

Um Conjunto de Dados contém relações em seu DataRelationCollection objeto. Uma relação, representada pelo DataRelation objeto, associa linhas em um DataTable a linhas em outro DataTable. Uma relação é análoga a um caminho de junção que pode existir entre colunas de chave primária e estrangeira em um banco de dados relacional. Um DataRelation identifica colunas correspondentes em duas tabelas de um DataSet.

As relações permitem a navegação de uma tabela para outra em um DataSet. Os elementos essenciais de um DataRelation são o nome da relação, o nome das tabelas relacionadas e as colunas relacionadas em cada tabela. As relações podem ser criadas com mais de uma coluna por tabela especificando uma matriz de DataColumn objetos como as colunas de chave. Ao adicionar uma relação ao DataRelationCollection, opcionalmente, você pode adicionar um UniqueKeyConstraint e um ForeignKeyConstraint para impor restrições de integridade quando forem feitas alterações aos valores de coluna relacionados.

Para obter mais informações, consulte Adicionar DataRelations.

XML

Você pode preencher um Conjunto de Dados de um fluxo XML ou documento. Você pode usar o fluxo XML ou o documento para fornecer ao DataSet dados, informações de esquema ou ambos. As informações fornecidas do fluxo XML ou do documento podem ser combinadas com dados ou informações de esquema existentes já presentes no DataSet. Para obter mais informações, consulte Como usar XML em um Conjunto de Dados.

Propriedades Estendidas

O DataSet, o DataTable e o DataColumn têm uma propriedade ExtendedProperties . ExtendedProperties é um PropertyCollection em que você pode colocar informações personalizadas, como a instrução SELECT que foi usada para gerar o conjunto de resultados ou a hora em que os dados foram gerados. A coleção ExtendedProperties é mantida com as informações de esquema do DataSet.

LINQ to DataSet

O LINQ to DataSet fornece recursos de consulta integrados à linguagem para dados desconectados armazenados em um DataSet. O LINQ to DataSet usa a sintaxe LINQ padrão e fornece suporte à verificação de sintaxe em tempo de compilação, digitação estática e suporte do IntelliSense ao usar o IDE do Visual Studio.

Para obter mais informações, consulte LINQ to DataSet.

Consulte também