Compartilhar via


Classe System.Data.DataSet

Este artigo fornece observações complementares à documentação de referência para essa API.

A DataSet classe, que é um cache na memória de dados recuperados de uma fonte de dados, é um componente importante da arquitetura ADO.NET. O DataSet consiste em uma coleção de DataTable objetos que você pode relacionar uns com os outros com DataRelation objetos. Você também pode impor a integridade dos DataSet dados no usando os UniqueConstraint objetos e ForeignKeyConstraint . Para obter mais detalhes sobre como trabalhar com DataSet objetos, consulte DataSets, DataTables e DataViews.

Enquanto DataTable os objetos contêm os dados, o DataRelationCollection permite que você navegue pela hierarquia da tabela. As tabelas estão contidas em um DataTableCollection acessado através da Tables propriedade. Ao acessar DataTable objetos, observe que eles condicionalmente diferenciam maiúsculas de minúsculas. Por exemplo, se uma for chamada "mydatatable" e outra for chamada "Mydatatable", uma cadeia de caracteres usada para procurar uma DataTable das tabelas será considerada sensível a maiúsculas e minúsculas. No entanto, se "mydatatable" existir e "Mydatatable" não, a cadeia de caracteres de pesquisa será considerada como diferenciando maiúsculas de minúsculas. Para obter mais informações sobre como trabalhar com DataTable objetos, consulte Criando uma DataTable.

Um DataSet pode ler e gravar dados e esquema como documentos XML. Os dados e o esquema podem ser transportados por HTTP e usados por qualquer aplicativo, em qualquer plataforma habilitada para XML. Você pode salvar o esquema como um esquema XML com o método, e o esquema e os dados podem ser salvos usando o WriteXmlSchemaWriteXml método. Para ler um documento XML que inclui esquema e dados, use o ReadXml método.

Em uma implementação típica de várias camadas, as etapas para criar e atualizar um DataSet, e, por sua vez, atualizar os dados originais são:

  1. Crie e preencha cada DataTable um com dados de uma fonte de dados usando um DataAdapterDataSet arquivo .

  2. Altere os dados em objetos individuais DataTable adicionando, atualizando ou excluindo DataRow objetos.

  3. Invoque o GetChanges método para criar um segundo DataSet que apresente apenas as alterações nos dados.

  4. Chame DataAdaptero método do , passando o Update segundo DataSet como um argumento.

  5. Chame o método para mesclar as alterações do segundo DataSet para o Merge primeiro.

  6. Invoque o AcceptChangesDataSetno . Como alternativa, invoque RejectChanges para cancelar as alterações.

Observação

Os DataSet objetos e DataTable herdam de MarshalByValueComponente oferecem suporte à ISerializable interface para comunicação remota. Esses são os únicos objetos ADO.NET que podem ser remotos.

Observação

As classes herdadas não são finalizadas pelo coletor de DataSet lixo, porque o finalizador foi suprimido no DataSet. A classe derivada pode chamar o ReRegisterForFinalize método em seu construtor para permitir que a classe seja finalizada pelo coletor de lixo.

Considerações de segurança

Para obter informações sobre a segurança DataSet e DataTable, consulte Diretrizes de segurança.