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
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