El datagrid está en un formulario de visual basic .net (no
es ASP)
y me da un error indicandome que el datareader no es un
origen de datos iList o iListSource.
Si utilizo dataset no tengo problemas para utilizar
el datagrid , el datareader tambien me funciona
correctamente para interactuar con la base de datos
(select,insert,update,delete) pero no puedo asignarlo
a un datagrid.
Si el dataset tarda varios segundos en tardarse es porque estás cargando un
número significativo de registros en memoria. Tu DataAdpater rellena primero
el DataSet obteniendo "todos" los registros de la tabla o tablas que
solicitastes, no es como el DataReader que sólo trae un registro y hasta que
no uses el método Read para traer el siguiente registro, sólo trabajarás con
el registro actual. Un DataReader en este caso no sería solución porque su
función principal es de un sólo recorrido y sin vuelta atrás. El datagrid
está diseñado para asociarse a un DataSet.
Aunque intentando llenar un dataset a través de un DataReader sería una
posible solución para luego asignarlo al datagrid, en realidad no lo es. El
método Fill del DataAdapter resulta más eficiente en este caso.
Me corrigen si estoy equivocado. :) Aqui estamos para aprender todos.
Saludos cordiales,
Ángel Ruiz
[MS Visual Basic Developer MVP]
Caracas - Venezuela
"El conocimiento es un bien, que crece a medida que se comparte"
"miguel" <mpr...@basf-it-services.com> wrote in message
news:ba1f01c48922$de5ff320$a601...@phx.gbl...
Un datareader también lo podemos asignar a un método
Datasource de un control web form de la siguiente forma:
Datagrid1.datasource = oCommand.ExecuteReader()
En este caso lo enlazan a un datagrid , y yo entiendo
que es como haciamos ahora enlazamos una cosulta sql en
modo conectado a un datagrid.
Programar para Webforms es un enfoque distinto a WinForms.
Cuidado con los conceptos.
Un saludo,
---
"miguel" <mpr...@basf-it-services.com> escribió en el mensaje news:ba1f01c48922$de5ff320$a601...@phx.gbl...