![]() |
resultados consulta en xml Hola a todos Mirando por internet, he leidoque pudo hacer consultas a una base de datos sql server y que me devuelva un fichero xml. Me gustaria hacer esto en mi aplicacion pero no se como, explico lo que he hecho. He creado un procedimiento almacenado como este CREATE PROCEDURE Xml_Almacenes AS SELECT * FROM almacenes FOR XML raw GO quiero mostrar esta informacion en un datagrid en mi programa hago esto: Conecto(cnn) Dim cmd As OdbcCommand cmd = New OdbcCommand("XML_Almacenes", cnn) cmd.CommandType = CommandType.StoredProcedure Dim cadena As String cadena = cmd.ExecuteScalar Ahora en cadena tengo el xml devleto de la consulta, se hace sto asi? es correcto? ahora no se como asignar ese churro de texto con formato xml al datagrid. Hay alguna forma de hacerlo directamente? Muchas gracias por su ayuda. :adios: |
Hombre, la verdad es que no entiendo muy bien para que quieres convertir los datos devueltos por una consulta SQL en xml simplemente para mostrarlos en un datagrid :pensando: Para mostrarlos en el datagrid, cargalos a una tabla en un dataset (por ejemplo) y después, si quieres guardar esos datos como xml, puedes emplear el metodo dataSet.writeXml ejemplo: (suponemos que tenemos un dataset 'ds' ya cargado) Dim fs as FileStream Dim XMLStream as StreamReader Dim xtw as XmlTextWriter fs = new FileStream(Server.MapPath("archivo.xml", FileMode.Create) xtw = new XmlTextWriter(fs, System.Text.Encoding.Unicode) ds.WriteXml(xtw, XmlWriteMode.WriteSchema) xtw.Close() fs.Close() (requiere los namespaces System.IO y System.Xml) Salu2 :adios: |
Lo que queria es hacer por un lado un servicio web que me devolviera datos en un formato xml. Tal y como tengo las cosas en mi proyecto ahora mismo, abro un comand con el resultado de la consulta, cargo undatareader para leer los datos y despues mediante un proceso lo transformo a xml para poder devolverlo. Al leer en una página de internet que podia sacar en formato xml el resultado de una consulta directamente pensé que podia ahorrarme algunos pasos en mis procesos, y eso es lo que quiero intentar. Por un lado, tengo creado mi servicio web de esta nueva formaque devuelve una cadena string con el resultado del procedimientos almacenado que devuelve un xml. Tal y como puse arriba: Conecto(cnn) Dim cmd As OdbcCommand cmd = New OdbcCommand("XML_Almacenes", cnn) cmd.CommandType = CommandType.StoredProcedure return cmd.ExecuteScalar por otro lado, en mi formulario declaro la variable string con lo que me devuelve la funcion. Al ser de tipo string y contener el contenido de un xml, como cargo un datagrid con eso? ¿Como podria hacer esto ? Un saludo y gracias por contestar |
| La zona horaria es GMT -6. Ahora son las 03:10. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.