Estoy generando un Web service que tiene una conexion a base de datos y extrae las rutas de algo. MI problema es:
Como configuro el xml que envia de regreso al cliente que solicito la operación es decir yo quiero formar como tal el xml con los items que yo quiera que tenga y ese enviarlo.
Lo que me regresa el xml es por ejemplo:

<?xml version="1.0" encoding="utf-8" ?>
<string xmlns="name espace">45123645</string>
Lo que yo quiero en la salida dependiendo de la base de datos es:

<?xml version="1.0" encoding="utf-8" ?>
<codigo>45123645</codigo>
<codigo>45123645</codigo>
<codigo>45123645</codigo>
<codigo>45123645</codigo>
Mi codigo de la funcion es:
<WebMethod()> _
Public Function GetGuia() As String
Dim cnx As New Conecta
Dim query As String
Dim xml As String
Dim rs As Data.SqlClient.SqlDataReader
query = "SELECT TOP 10 * FROM Codigos"
cnx.abrir()
rs = cnx.SqlRead(query)
rs.Read()
xml = rs("Codigo")
cnx.cerrar()
Return xml
End Function

NOTA:La clase de conección a la base de datos no la pongo. Se que no estoy recorriendo el recorset por lo tanto solo me regresa el 1er dato, pero eso no habria problema, mi pregunta es como puedo regresar varios resultados y asignar yo el nombre de los item del xml??
Muchas gracias, espero que haya muchas personas que puedan contestar me super urge para la chamba!!!
