O ADO.NET é um conjunto de classes que fazem parte do .NET F...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Resposta Correta: D
A questão aborda o entendimento do componente DataSet do ADO.NET no .NET Framework 4.5. O ADO.NET é uma parte essencial do .NET Framework utilizada para o acesso a dados, permitindo que os desenvolvedores de software interajam com dados de diversas fontes, principalmente bancos de dados relacionais.
A afirmativa correta (D) diz que um DataSet pode conter uma coleção de um ou mais objetos DataTable. Isso é verdade porque um DataSet é projetado para trabalhar com dados que são independentes ou desconectados da fonte de dados. Os objetos DataTable dentro de um DataSet representam tabelas de dados que consistem em linhas e colunas. Além disso, é possível definir chaves primárias e estrangeiras e criar relações entre tabelas usando objetos DataRelation, o que permite a criação de relações lógicas entre as tabelas, similarmente ao que acontece em um banco de dados relacional.
Dentro de um DataSet, pode-se manipular dados mesmo quando a conexão com a fonte de dados não está disponível, e depois sincronizar as mudanças com a fonte de dados quando necessário. Além disso, um DataSet é capaz de armazenar não apenas dados, mas também metadados sobre os dados, como restrições de integridade e relações entre as tabelas.
É importante destacar que as outras opções apresentam concepções equivocadas sobre o DataSet:
- A alternativa A está incorreta porque é possível criar um novo DataSet baseado em um existente, por exemplo, usando o método Clone ou Copy.
- A alternativa B está incorreta porque um DataSet pode ser preenchido manualmente com tabelas de dados, não se restringindo apenas ao uso de um DataAdapter.
- A alternativa C está incorreta porque o objeto DataRelation é utilizado para definir uma relação entre tabelas distintas dentro de um DataSet, e não para navegar de um DataSet para outro.
- A alternativa E está incorreta porque um DataSet fornece uma variedade de eventos para controlar diversas ações, como mudanças nos dados, além dos eventos Disposed e Initialized.
Compreender o DataSet e seu papel no ADO.NET é essencial para trabalhar eficientemente com dados desconectados e é frequentemente um tópico cobrado em concursos públicos para programadores .NET.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
fonte: http://msdn.microsoft.com/en-us/library/e80y5yhx.aspx
Creio que no item C a banca apenas inverteu. Afinal o DataSet que possui vários DataTables.
✅Gabarito(D)
A) Você cria uma instância de um DataSet chamando o construtor DataSet. Você também pode criar um novo DataSet baseado em um DataSet existente.
Fonte: https://docs.microsoft.com/pt-br/dotnet/framework/data/adonet/dataset-datatable-dataview/creating-a-dataset
B) Como DataSet é independente da fonte de dados, um DataSet pode incluir o local de dados para o aplicativo, e os dados de várias fontes de dados. A interação com fontes de dados existente é controlada com o DataAdapter.
Fonte: https://docs.microsoft.com/pt-br/dotnet/framework/data/adonet/populating-a-dataset-from-a-dataadapter
C) Em um com vários objetos , você pode usar objetos para relacionar uma tabela a outra, para navegar pelas tabelas e para retornar as linhas filho ou pai de uma tabela relacionada.
Fonte: https://docs.microsoft.com/pt-br/dotnet/framework/data/adonet/dataset-datatable-dataview/adding-datarelations
D) Gabarito
E) Possui os eventos: Dispose Disposed, Initialized, MergeFailed
Fonte: https://docs.microsoft.com/pt-br/dotnet/framework/data/adonet/dataset-datatable-dataview/handling-dataset-events
Criando um DataSet baseado em outro:
DataSet originalDataSet = new DataSet();
...
// Clone o DataSet existente para criar um novo DataSet com a mesma estrutura
DataSet novoDataSet = originalDataSet.Clone();
// Crie um DataAdapter para preencher as tabelas do novo DataSet
SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM tabela", "string de conexão");
// Use o DataAdapter para preencher as tabelas do novo DataSet com dados do banco de dados
adapter.Fill(novoDataSet, "tabela");
DataRelation é para relação entre tabelas, exemplo:
// Crie uma relação entre as tabelas
DataColumn primaryKeyColumn = customersTable.Columns["CustomerId"];
DataColumn foreignKeyColumn = ordersTable.Columns["CustomerId"];
DataRelation relation = new DataRelation("CustomerOrders", primaryKeyColumn, foreignKeyColumn);
dataSet.Relations.Add(relation);
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo