Ler dados XML em um dataset
Publicado: abril de 2016
O ADO.NET fornece métodos simples para trabalhar com dados XML. Este passo a passo, você criará um aplicativo do Windows que irá carregar dados XML em um conjunto de dados. O conjunto de dados será exibido em um DataGridView. Finalmente, um esquema XML com base no conteúdo do arquivo XML será exibido na caixa de texto.
Este passo a passo consiste em cinco etapas principais:
Criar um novo projeto.
Criando um arquivo XML a ser lido para o dataset.
Criando a interface do usuário.
Criando o dataset, leia o arquivo XML e exibi-lo em um DataGridView controle.
Adicionando código para exibir o esquema XML com base no arquivo XML em um TextBox controle.
Dica
Caixas de diálogo e comandos de menu que você vê podem diferir daqueles descritos na Ajuda, dependendo de suas configurações ativas ou edição. Para alterar suas configurações, escolha Import and Export Settings sobre o ferramentas menu. Para obter mais informações, consulte Personalizando configurações de desenvolvimento no Visual Studio.
Criar um novo projeto
Nesta etapa, você criará um projeto Visual Basic ou Visual c# que conterá este passo a passo.
Para criar o novo projeto do Windows
Do arquivo menu, crie um novo projeto.
Nomeie o projeto
ReadingXML
.Selecione Windows Application e clique em OK. Para obter mais informações, consulte Aplicativos cliente.
O ReadingXML projeto é criado e adicionado ao Solution Explorer.
Gerar o arquivo XML a ser lido para o Dataset
Porque essa explicação passo a passo se concentra na leitura de dados XML em um dataset, o conteúdo de um arquivo XML é fornecido.
Para criar o arquivo XML que será lido para o conjunto de dados
Do projeto menu, escolha Add New Item.
Selecione arquivo XML, nomeie o arquivo
authors.xml
, e clique em Add.O arquivo XML carrega no designer e está pronto para edição.
Cole o seguinte código 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>
Do arquivo aponte para Salvar Authors.
Criar a Interface do usuário
A interface do usuário para esse aplicativo consistirá o seguinte:
Um DataGridView controle que exibirá o conteúdo do arquivo XML como dados.
Um TextBox controle que exibirá o esquema XML para o arquivo XML.
Dois Button controles.
Um botão lê o arquivo XML para o dataset e exibe-o no DataGridView controle.
Um segundo botão extrai o esquema do dataset e por um StringWriter exibe no TextBox controle.
Para adicionar controles ao formulário
Abra
Form1
no modo de design.Do Toolbox, arraste os seguintes controles ao formulário:
Um DataGridView controle
Um TextBox controle
Dois Button controles
Defina as seguintes propriedades:
Controle Propriedade Configuração TextBox1
Várias linhas true
Barras de rolagem Vertical Button1
Nome ReadXmlButton
Texto Read XML
Button2
Nome ShowSchemaButton
Texto Show Schema
Criar o conjunto de dados que receberá os dados XML
No procedimento seguinte, você cria um novo dataset chamado authors
. Para obter mais informações sobre conjuntos de dados, consulte Ferramentas do conjunto de dados no Visual Studio.
Para criar um novo conjunto de dados que receberá os dados XML
Com o arquivo de origem Form1 selecionado no Solution Explorer, clique o View Designer no botão de Solution Explorer barra de ferramentas.
Do Caixa de Ferramentas, Guia Dados, arraste um DataSet para Form1.
Selecione dataset não tipado sobre o Adicionar conjunto de dados caixa de diálogo e clique OK.
DataSet1 é adicionado à bandeja de componentes.
No propriedades janela, defina o nome e DataSetName propriedades
AuthorsDataSet
.
Crie o manipulador de eventos para ler o XML para o conjunto de dados
O Read XML botão lê o arquivo XML para o dataset e define propriedades sobre o DataGridView controle associá-lo ao conjunto de dados.
Para adicionar código ao manipulador de eventos ReadXmlButton_Click
Em Solution Explorer, selecione Form1 e clique no View Designer botão o Solution Explorer barra de ferramentas.
Clique duas vezes o Read XML botão.
O Editor de códigos abre no
ReadXmlButton_Click
manipulador de eventos.Digite o seguinte código para o
ReadXmlButton_Click
manipulador de eventos:private void ReadXmlButton_Click(object sender, EventArgs e) { string filePath = "Complete path where you saved the XML file"; AuthorsDataSet.ReadXml(filePath); dataGridView1.DataSource = AuthorsDataSet; dataGridView1.DataMember = "authors"; }
Private Sub ReadXmlButton_Click() Handles ReadXmlButton.Click Dim filePath As String = "Complete path where you saved the XML file" AuthorsDataSet.ReadXml(filePath) DataGridView1.DataSource = AuthorsDataSet DataGridView1.DataMember = "authors" End Sub
No
ReadXMLButton_Click
código de manipulador de eventos de alteração defilepath =
entrada para o caminho correto.
Criar o manipulador de eventos para exibir o esquema na caixa de texto
O Show Schema botão cria uma StringWriter objeto que é preenchido com o esquema e exibido no TextBox .
Para adicionar código ao manipulador de eventos ShowSchemaButton_Click
Em Solution Explorer, selecione Form1 e clique no View Designer botão.
Clique duas vezes o Show Schema botão.
O Editor de códigos abre no
ShowSchemaButton_Click
manipulador de eventos.Digite o seguinte código para o
ShowSchemaButton_Click
manipulador de eventos.private void ShowSchemaButton_Click(object sender, EventArgs e) { System.IO.StringWriter swXML = new System.IO.StringWriter(); AuthorsDataSet.WriteXmlSchema(swXML); textBox1.Text = swXML.ToString(); }
Private Sub ShowSchemaButton_Click() Handles ShowSchemaButton.Click Dim swXML As New System.IO.StringWriter() AuthorsDataSet.WriteXmlSchema(swXML) TextBox1.Text = swXML.ToString End Sub
Teste
Agora você pode testar o formulário para certificar-se de que ele se comporta conforme o esperado.
Para testar o formulário
Pressione F5 para executar o aplicativo.
Clique o Read XML botão.
O DataGridView exibe o conteúdo do arquivo XML.
Clique o Show Schema botão.
A caixa de texto exibe o esquema XML para o arquivo XML.
Próximas etapas
Este passo a passo mostra as Noções básicas de ler um arquivo XML em um dataset, bem como criar um esquema com base no conteúdo do arquivo XML. Aqui estão algumas tarefas que podem vir a seguir:
Edite os dados no dataset e grave-os de volta como XML. Para obter mais informações, consulte WriteXml.
Editar os dados no dataset e grave-os em um banco de dados. Para obter mais informações, consulte Salvando dados.
Consulte também
Instruções passo a passo de dados
Acessando dados no Visual Studio
Preparando o aplicativo para receber dados
Ferramentas XML no (Visual Studio)