Ler dados XML em um conjunto de dados em aplicativos .NET Framework
Observação
Os conjuntos de dados e as classes relacionadas são tecnologias herdadas do .NET Framework do início dos anos 2000 que permitem que os aplicativos trabalhem com dados na memória enquanto os aplicativos estão desconectados do banco de dados. As tecnologias são bastante úteis em aplicativos que permitem que os usuários modifiquem dados e persistam as alterações no banco de dados. Embora os conjuntos de dados tenham se mostrado uma tecnologia muito bem-sucedida, é recomendado que os novos aplicativos .NET usem o Entity Framework Core. O Entity Framework proporciona uma forma mais natural de trabalhar com dados tabulares como modelos de objeto e conta com uma interface de programação mais simples.
O ADO.NET fornece métodos simples para trabalhar com dados XML. Neste passo a passo, você cria um aplicativo do Windows que carrega dados XML em um conjunto de dados. Em seguida, o conjunto de dados é exibido em um controle DataGridView. Por fim, um esquema XML baseado no conteúdo do arquivo XML é exibido em uma caixa de texto.
Pré-requisitos
Para concluir este tutorial, você precisa do Visual Studio com as seguintes cargas de trabalho instaladas:
- Desenvolvimento para área de trabalho com .NET
- Armazenamento de dados e processamento
Para instalá-las, abra Instalador do Visual Studio e escolha Modificar (ou Mais>Modificar) ao lado da versão do Visual Studio que você deseja modificar. Confira Modificar o Visual Studio.
Criar um novo projeto
Crie um projeto de Aplicativo do Windows Forms para C# ou Visual Basic. Dê ao projeto o nome ReadingXML.
Gerar o arquivo XML a ser lido no conjunto de dados
Como este passo a passo se concentra na leitura de dados XML em um conjunto de dados, o conteúdo de um arquivo XML é fornecido.
No menu Projeto, selecione Adicionar novo item.
Selecione Arquivo XML, dê ao arquivo o nome authors.xmle selecione Adicionar.
O arquivo XML é carregado no designer e está pronto para edição.
Cole os seguintes dados XML no editor abaixo da declaração XML:
<Authors_Table> <authors> <au_id>172-32-1176</au_id> <au_lname>White</au_lname> <au_fname>Johnson</au_fname> <phone>408 496-7223</phone> <address>10932 Bigge Rd.</address> <city>Menlo Park</city> <state>CA</state> <zip>94025</zip> <contract>true</contract> </authors> <authors> <au_id>213-46-8915</au_id> <au_lname>Green</au_lname> <au_fname>Margie</au_fname> <phone>415 986-7020</phone> <address>309 63rd St. #411</address> <city>Oakland</city> <state>CA</state> <zip>94618</zip> <contract>true</contract> </authors> <authors> <au_id>238-95-7766</au_id> <au_lname>Carson</au_lname> <au_fname>Cheryl</au_fname> <phone>415 548-7723</phone> <address>589 Darwin Ln.</address> <city>Berkeley</city> <state>CA</state> <zip>94705</zip> <contract>true</contract> </authors> <authors> <au_id>267-41-2394</au_id> <au_lname>Hunter</au_lname> <au_fname>Anne</au_fname> <phone>408 286-2428</phone> <address>22 Cleveland Av. #14</address> <city>San Jose</city> <state>CA</state> <zip>95128</zip> <contract>true</contract> </authors> <authors> <au_id>274-80-9391</au_id> <au_lname>Straight</au_lname> <au_fname>Dean</au_fname> <phone>415 834-2919</phone> <address>5420 College Av.</address> <city>Oakland</city> <state>CA</state> <zip>94609</zip> <contract>true</contract> </authors> </Authors_Table>
No menu Arquivo, selecione Salvar authors.xml.
Criar a interface do usuário
A interface do usuário do aplicativo é composta pelo seguinte:
Um controle DataGridView que exibe o conteúdo do arquivo XML como dados.
Um controle TextBox que exibe o esquema XML para o arquivo XML.
Dois controles Button.
Um botão lê o arquivo XML no conjunto de dados e o exibe no controle DataGridView.
Um segundo botão extrai o esquema do conjunto de dados e, por meio de um StringWriter, o exibe no controle TextBox.
Para adicionar controles ao formulário
Abra
Form1
no modo de exibição de design.Na Caixa de Ferramentas, arraste os seguintes controles para o formulário:
Um controle DataGridView
Um controle TextBox
Dois controles Button
Defina as seguintes propriedades:
Control Propriedade Configuração TextBox1
Multilinha true
ScrollBars Vertical Button1
Nome ReadXmlButton
Texto Read XML
Button2
Nome ShowSchemaButton
Texto Show Schema
Criar o conjunto de dados que recebe os dados XML
Nesta etapa, você cria um conjunto de dados chamado authors
. Para obter mais informações sobre conjuntos de dados, consulte Ferramentas de conjunto de dados no Visual Studio.
No Gerenciador de Soluções, selecione o arquivo de origem para Form1 e, em seguida, o botão Designer de Exibição na barra de ferramentas do Gerenciador de Soluções.
Na Caixa de Ferramentas, guia Dados, arraste um Conjunto de Dados para Form1.
Na caixa de diálogo Adicionar Conjunto de Dados, selecione Conjunto de dados sem tipo e selecione OK.
DataSet1 é adicionado à bandeja de componentes.
Na janela Propriedades, defina o Nome e as propriedades DataSetName para
AuthorsDataSet
.
Criar o manipulador de eventos para ler o arquivo XML no conjunto de dados
O botão Ler XML lê o arquivo XML no conjunto de dados. Em seguida, define propriedades no controle DataGridView que o associam ao conjunto de dados.
No Gerenciador de Soluções, selecione Form1 e, em seguida, o botão Designer de Exibição na barra de ferramentas do Gerenciador de Soluções.
Clique duas vezes no botão Ler XML.
O Editor de Código é aberto no manipulador de eventos
ReadXmlButton_Click
.Digite o seguinte código no manipulador de eventos
ReadXmlButton_Click
:No código do manipulador de eventos
ReadXMLButton_Click
, altere a entradafilepath =
para o caminho correto.
Criar o manipulador de eventos para exibir o esquema na caixa de texto
O botão Mostrar Esquema cria um objeto StringWriter que é preenchido com o esquema e exibido no controle TextBox.
No Gerenciador de Soluções, selecione Form1 e, em seguida, o botão Designer de Exibição.
Clique duas vezes no botão Mostrar esquema.
O Editor de Código é aberto no manipulador de eventos
ShowSchemaButton_Click
.Cole o código a seguir no manipulador de eventos
ShowSchemaButton_Click
.
Testar o formulário
Agora, é possível testar o formulário para garantir que ele se comporta da forma esperada.
Selecione F5 para executar o aplicativo.
Selecione o botão Ler XML.
DataGridView exibe o conteúdo do arquivo XML.
Selecione o botão Mostrar Esquema.
A caixa de texto exibe o esquema XML para o arquivo XML.
Próximas etapas
Este passo a passo ensina os conceitos básicos da leitura de um arquivo XML em um conjunto de dados, bem como da criação de um esquema baseado no conteúdo do arquivo XML. Estas são algumas tarefas que você pode realizar em seguida:
Editar os dados no conjunto de dados e escrevê-los novamente como XML. Para obter mais informações, consulte WriteXml.
Edite os dados no conjunto de dados e escreva-os em um banco de dados.