Filtrar registros en un xml

24/08/2005 - 14:22 por Roberth Dudiver | Informe spam
Amigos necesito hacer una busqueda en un campo en el xml y q me traiga los
registros q contengas esa busqueda, algo asi com en sql "select * from tabla
where campo=variable" pero realmente no tengo la minima idea de como hacer
algo parecido desde una data en xml, si podrian darme un vinculo o alguna
forma de hacerlo seria de mucha ayuda.

Gracias de antemano

Preguntas similare

Leer las respuestas

#1 Lord
24/08/2005 - 17:14 | Informe spam
Roberth,

sé de la existencia de xQuery, y seguramente con eso lo podrías
solucionar, pero por desgracia es una de mis asignaturas pendientes,
saber usar xQuery.

Yo lo haría de una forma mucho más trapera :( pero es como sé.

Transformaría el XML entrante en otro XML mediante un archivo de
transformación XSL. En el XML resultante, escribiría solo los
elementos que me interesaran, y ya está.

Te dejo un enlace muy interesante sobre transformaciones XSL:
http://xml.utilitas.org/xslt_mini_como.html

Enrique.
Respuesta Responder a este mensaje
#2 Roberth Dudiver
24/08/2005 - 21:00 | Informe spam
Gracias por la respuesta Enrique , ya la probe si funciona pero la dejare
para ultima instancia si no encuentro una forma mas adecuada,

Att Roberth Dudiver
www.maracayup.com




"Lord" escribió en el mensaje
news:
Roberth,

sé de la existencia de xQuery, y seguramente con eso lo podrías
solucionar, pero por desgracia es una de mis asignaturas pendientes,
saber usar xQuery.

Yo lo haría de una forma mucho más trapera :( pero es como sé.

Transformaría el XML entrante en otro XML mediante un archivo de
transformación XSL. En el XML resultante, escribiría solo los
elementos que me interesaran, y ya está.

Te dejo un enlace muy interesante sobre transformaciones XSL:
http://xml.utilitas.org/xslt_mini_como.html

Enrique.
Respuesta Responder a este mensaje
#3 Roberth Dudiver
24/08/2005 - 21:36 | Informe spam
Hola a todos, no se si esta sera la mejro forma pero asi lo hice ,

try
{

DataSet Ds = new DataSet();

Ds =XMLSS.llenar();





DataView myDataView = new
DataView(Ds.Tables["Productos"]);



myDataView.Sort = "ccopro";



myDataView.RowFilter =
"ccopro='"+this.combo_s.SelectedValue.ToString()+"'";



for (int i = 0; i < myDataView.Count; i++)

{

this.textBox1.Multiline= true;

this.textBox1.Text=
myDataView[i]["cprecio"].ToString()+" Bs.";

//myDataView[i]["ccopro"].ToString()

}

}

catch(Exception es)

{

MessageBox.Show(es.ToString());

}







El xml q consume es este J



<?xml version="1.0" standalone="yes"?>

<NewDataSet>

<Productos>

<ccopro>1</ccopro>

<cprecio>5000</cprecio>

<cexistencia>55</cexistencia>

<cname>Jabon</cname>

</Productos>

<Productos>

<ccopro>2</ccopro>

<cprecio>6000</cprecio>

<cexistencia>22</cexistencia>

<cname>Desodorante</cname>

</Productos>

<Productos>

<ccopro>3</ccopro>

<cprecio>845</cprecio>

<cexistencia>123</cexistencia>

<cname>Cereal Kellog</cname>

</Productos>

<Productos>

<ccopro>4</ccopro>

<cprecio>234</cprecio>

<cexistencia>45</cexistencia>

<cname>Pasta dental Colgate</cname>

</Productos>

</NewDataSet>




"Lord" escribió en el mensaje
news:
Roberth,

sé de la existencia de xQuery, y seguramente con eso lo podrías
solucionar, pero por desgracia es una de mis asignaturas pendientes,
saber usar xQuery.

Yo lo haría de una forma mucho más trapera :( pero es como sé.

Transformaría el XML entrante en otro XML mediante un archivo de
transformación XSL. En el XML resultante, escribiría solo los
elementos que me interesaran, y ya está.

Te dejo un enlace muy interesante sobre transformaciones XSL:
http://xml.utilitas.org/xslt_mini_como.html

Enrique.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida