por Cesar Cassiano Schimanco

XML para DataSet em ASP.NET / C#

Ler XML com DataSet é muito simples, basta usar o ReadXml do DataSet. Similar ao WriteXml que passa o DataSet para XML. Feito isso vamos ver como ler os campos do XML com o DataSet, ou seja, pegar as linhas e colunas.

Vamos ver no exemplo abaixo o que fazer depois de popular o DataSet com os dados do XML.

Exemplo simples de XML:

<?xml version="1.0" encoding="utf-8"?>
<contatos>
    <contato>
        <nome>Exemplo 1</nome>
        <email>email1@cbsa.com.br</email>
    </contato>
    <contato>
        <nome>Exemplo 2</nome>
        <email>email2@cbsa.com.br</email>
    </contato>
</contatos>

Código para carregar o arquivo XML no DataSet

using System.Data;
...

//Server.MapPath - serve para pegar o caminho completo no sistema.
//Server.MapPath("~/contatos.xml") = c:\inetpub\wwwroot\site\contatos.xml
string sFile = Server.MapPath("~/contatos.xml");

//Criar o DataSet
DataSet ds = new DataSet();
//Carregar os dados do XML
ds.ReadXml(sFile);

//Imprimir na página os dados do XML
for (int i = 0; i < ds.Tables["contato"].Rows.Count; i++)
{
	string sName = ds.Tables["contato"].Rows[i]["nome"].ToString();
	string sEmail = ds.Tables["contato"].Rows[i]["email"].ToString();
	Response.Write("Nome: " + sName + " e-mail: " + sEmail + "<br />");
}

Resultado:
Nome: Exemplo 1 e-mail: email1@cbsa.com.br
Nome: Exemplo 2 e-mail: email2@cbsa.com.br

Comentários

Carregando comentários

Postar um novo comentário



Processando...