Foros del Web » Programación para mayores de 30 ;) » .NET »

Como hacer un webservices que retorne una Lista de datos

Estas en el tema de Como hacer un webservices que retorne una Lista de datos en el foro de .NET en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 22/10/2012, 19:55
 
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. }
  #2 (permalink)  
Antiguo 22/10/2012, 20:52
Avatar de gedarufi  
Fecha de Ingreso: diciembre-2008
Ubicación: Colombia
Mensajes: 540
Antigüedad: 15 años, 4 meses
Puntos: 22
Respuesta: Como hacer un webservices que retorne una Lista de datos

Tu puedes retornar una tabla, solo que es recomendable que sea una tabla genérica y no una con tipo.

Saludos
  #3 (permalink)  
Antiguo 22/10/2012, 21:18
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: Como hacer un webservices que retorne una Lista de datos

Hola, Ya me salio siempre si retorno una lista Como ves? crees q esta bien mi forma de hacerlo? porque si funciona.
Saludos
Código c#:
Ver original
  1. [WebMethod]
  2.     public List<Usuario> DatosDevueltos()
  3.     {
  4.         string query = "select * from usuarios";
  5.         SqlDataAdapter da = new SqlDataAdapter(query, conexion);
  6.         DataTable dt = new DataTable();
  7.         da.Fill(dt);
  8.  
  9.         List<Usuario> usuario = new List<Usuario>();
  10.         foreach (DataRow dr in dt.Rows)
  11.         {
  12.  
  13.             Usuario usu = new Usuario();
  14.             usu.User = Convert.ToString(dr["usuario"]);
  15.             usu.Password = Convert.ToString(dr["Password"]);
  16.             usuario.Add(usu);
  17.         }
  18.         return usuario;
  19.  
  20.        
  21.     }
  #4 (permalink)  
Antiguo 23/10/2012, 07:34
Avatar de gedarufi  
Fecha de Ingreso: diciembre-2008
Ubicación: Colombia
Mensajes: 540
Antigüedad: 15 años, 4 meses
Puntos: 22
Respuesta: Como hacer un webservices que retorne una Lista de datos

Creo que ya es mas un tema de medir rendimiento sobre si utilizas un método u otro, también depende de la cantidad de información que quieras enviar, te recomiendo que tengas cuidado con enviar contraseñas sin cifrar.

Saludos

Etiquetas: lista, net, retorne, sql, webservice
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:07.