Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/10/2012, 19:55
th3r0rn
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
Como hacer un webservices que retorne una Lista de datos

Hola,
Lo que quiero hacer es un WebServices que me retorne una lista de datos para despues poder pasarla a un gridview. ¿Que porque lo hago asi?Pues porque no puedo retornar un dt desde un webservices porq no sera leido que por serializacion.
Pueden ayudarme para ver si mi codigo esta bien hecho? especialmente la parte donde defino la clase q retornara un LIST que creo no la he definido bien y ese podria ser el problema.
Espero puedanayudarme.
Saludos.
Código C#:
Ver original
  1. using System;
  2.  
  3. /// <summary>
  4. /// Descripción breve de ServicioDatos
  5. /// </summary>
  6. [WebService(Namespace = "http://tempuri.org/")]
  7. [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
  8. // Para permitir que se llame a este servicio Web desde un script, usando ASP.NET AJAX, quite la marca de comentario de la línea siguiente.
  9. // [System.Web.Script.Services.ScriptService]
  10. public class ServicioDatos : System.Web.Services.WebService {
  11.         string conexion = "SERVER=VALP-MAPLE01;UID=sa;PWD=messrv;DATABASE=Practica";
  12.     public ServicioDatos () {
  13.  
  14.        
  15.     }
  16.  
  17.     [WebMethod]
  18.     public List<string> DatosDevueltos()
  19.     {
  20.         string query = "select * from usuarios";
  21.         SqlDataAdapter da = new SqlDataAdapter(query, conexion);
  22.         DataTable dt = new DataTable();
  23.         da.Fill(dt);
  24.  
  25.         List<Usuario> usuario = new List<Usuario>();
  26.         foreach (DataRow dr in dt.Rows)
  27.         {
  28.  
  29.             Usuario usu = new Usuario();
  30.             usu.User = Convert.ToString(dr["usuario"]);
  31.             usu.Password = Convert.ToString(dr["Password"]);
  32.             usuario.Add(usu);
  33.         }
  34.         return usuario;
  35.  
  36.        
  37.     }
  38.    
  39. }