Cita:
Iniciado por moNTeZIon
La verdad es que en el caso del DataReader, de acuerdo con que será más rápido que usar DataSet, pero al final, también tendrá en todo momento los valores en memoria. Si te fijas, lo que hago es ir construyendo una lista de objetos Cliente, que finalmente será lo que devuelva la función. Aun así, ¿sigues viendo más rápido este método?
Es diferente. Tu quieres comparar la velocidad de adquisición de los datos. Y mientras que el DataSet los ha de obtener y mantener todos en memoria, el DataReader solo ha de tener una fila en memoria cada vez. Se tendría que ver cuanta memoria te ocupa la lista generada, pero diria que ocupará menos la lista, además de que le puedes meter mano. Pero vamos, a nivel de velocidad (tu pregunta inicial) gana el DataReader.
Ojo, esto te lo he comentado viendo únicamente esa función. Dependiendo del uso que le quieras dar luego a esos valores te puede interesar (o no) utilizar mejor un dataset. Peeeeeeeero viendo esto otro....
Cita:
Iniciado por moNTeZIon
Y otra pregunta:
Finalmente, voy a utilizar lo que devuelva la función como DataSource de un GridView. ¿No hay problema en asignar un "List (Of DetallesCliente)" como DataSource de un DataGrid?
¿El rendimiento será el mismo o mejor que si el DataSource fuera un DataTable?
Gracias por todo!
Saludos.
Casi te recomendaría mejor usar la primera opción, aunque puedes hacer el binding a la lista sin ningún problema.
Te paso un link que quizás te saque de dudas o te genere más :P
http://msguayaquil.com/blogs/julioc/...taReaders.aspx