XML e Dataset (Merge)
Veja neste artigo um pouco sobre Dataset com xml, e saiba como unir dois arquivos xml.
XML e Dataset (Merge)
Ola Pessoal, hoje irei falar um pouco sobre Dataset com xml, veremos como fundir dois arquivos xml e fazer isso virar um arquivo só.
Mãos a massa.
Nosso exemplo é simples, porém bastante funcional, espero que assim possam abrir novas idéias pra vocês.
Começaremos criando dois arquivos xml, o primeiro com o nome Clientes.xml,e o segundo com o nome Produtos.xml, eis a estrutura abaixo.
Clientes.xml
<?xml version="1.0" ?>
<Principal>
<Clientes>
<Nome>Maria da Silva</Nome>
<Sexo>Feminino</Sexo>
<DataCadastro>23/02/2007</DataCadastro>
</Clientes>
<Clientes>
<Nome>Marcio de Oliveira</Nome>
<Sexo>Masculino</Sexo>
<DataCadastro>22/02/2007</DataCadastro>
</Clientes>
</Principal>
Produtos.xml
<?xml version="1.0"?>
<Produtos>
<Tipo id="10">
<Nome>Shampoo</Nome>
<Preco>R$ 10,00</Preco>
</Tipo>
<Tipo id="20">
<Nome>Shampoo</Nome>
<Preco>R$ 10,00</Preco>
</Tipo>
</Produtos>
Iremos criar um projeto do tipo Web com C#, dê o nome que quiser.
Adicione um Botão.
ID: btnGerar
Text: Gerar Xml
Figura 01..
Na codificação do botão iremos adicionar o seguinte código.
Não esqueça de importar o Namespace System.Xml;
protected void btnGerar_Click(object sender, EventArgs e)
{
//Criando as variaveis de leitura de arquivo xml
XmlTextReader xml1 = new XmlTextReader("e:\\Clientes.xml");
XmlTextReader xml2 = new XmlTextReader("e:\\Produtos.xml");
//Criando os DataSets para posteriormente ler o arquivo xml
DataSet ds1 = new DataSet();
DataSet ds2 = new DataSet();
try
{
ds1.ReadXml(xml1);
ds2.ReadXml(xml2);
// Merge >> Método que permite fundir dois objetos
ds1.Merge(ds2);
//Criando um novo arquivo xml com a estrutura dos 2 arquivos xml
ds1.WriteXml("e:\\Resultado.xml", XmlWriteMode.IgnoreSchema);
Response.Write("Arquivo criado");
}
catch (Exception ex)
{
Response.Write(ex.ToString());
}
}
Arquivo gerado.
Figura 02. Resultado.
Com isso devemos ter nosso xml gerado com o resultado de 2 arquivos xml. Você também pode usar um DataTable para fazer isso, o DataTable agora tem o método Merge, assim não precisando mais usar DataSet.
É isso ai pessoal até mais.
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo