pesquisa em arquivo xml

17/06/2010

Boa noite!!!!
         Faço a atribuição do arquivo xml a minha aplicação, gostaria de sabe como poderia filtrar dados a partir desse, exemplo: cidades cujo estado é Go.

   DataSet ds1 = new DataSet();
            ds1.ReadXml(Request.PhysicalApplicationPath + "cidades.xml");

 Desde ja agradeço!!!

Rodrigo Pereira

Currículo

Respostas

18/06/2010

Ítalo Chesley

Bom dia senhor, tudo bem?   Você pode fazer isso utilizando o LINQ to XML, cujas classes estão disponíveis no Namespace: System.Xml.LINQ.   Um exemplo:   Pesquisando num XML assim:   <Dados> <Estados>Minas GeraisEstados> <Estados>Esprito SantoEstados> <Estados>So PauloEstados> <Estados>PernambucoEstados> <Estados>CearEstados> <Estados>Rio de JaneiroEstados> <Estados>BahiaEstados> <Estados>SergipeEstados> <Estados>Rio Grande do SulEstados> <Estados>RondniaEstados> <Estados>TocantinsEstados> Dados>     Você pode fazer a consulta e ordenar muito facilmente:   objXElement = XElement.Load(@"C:\Estados.XML");//o caminho do arquivo var dados = (from a in objXElement.Elements("Estados") where a.Value.ToString().Contains("Minas")//aqui voc filtra como quiser select new { Estado = a.Value.ToString() } ).ToList();     Espero que tenha atendido à sua necessidade e expectativa.   Abração e bom dia de trabalho!
Responder Citar

18/06/2010

Rodrigo Pereira Currículo

ok!!
Agora queria exibi-lo no grid view, não sei se fiz da forma correta

 GridView1.DataSource = dados;
       XElement objXElement = XElement.Load(@"C:\CIDADES.XML");//o caminho do arquivo

        var dados = (from a in objXElement.Elements("uf")

                     where a.Value.ToString().Contains("GO")//aqui voc filtra como quiser

                     select new

                     {

                         Estado = a.Value.ToString()

                     }

        ).ToList();

       
        GridView1.DataSource = dados;
        GridView1.DataBind();

Desde já agradeço!!!
   
Responder Citar

29/06/2010

Ítalo Chesley

Cara, a leitura deste artigo que escrevi acredito que pode te ajudar.   Abraço
Responder Citar