Fill de tabla en Load

21/11/2008 - 22:12 por Gilbert | Informe spam
Soy nuevo en .net. Hice un form con el asistente con un dataset tipado para
una tabla, funciona bien pero veo que me hace un fill de todos los datos en
el load del form.
Como se configura que no me cargue todo sino que me vaya cargando los
registros a demanda para mostrar en pantalla?
 

Leer las respuestas

#1 Juan Diego Bueno
21/11/2008 - 22:53 | Informe spam
Hola Gilbert:

"Gilbert" escribió en el mensaje de
noticias:
Soy nuevo en .net. Hice un form con el asistente con un dataset tipado
para una tabla, funciona bien pero veo que me hace un fill de todos los
datos en el load del form.
Como se configura que no me cargue todo sino que me vaya cargando los
registros a demanda para mostrar en pantalla?



Tienes que definir la consulta que va a componer el fill sobre el dataset.
El dataset tipado tiene principalmente un método fill que llena el datatable
correspondiente con todos los registros. Si te fijas en el datatable dentro
del dataset tipado, observarás el tableadapter que lo llena, su método fill
y que puede configurarse para que responda a un tipo de consulta diferente.
También puedes crearte tu uno diferente y complementario a este. Por
ejemplo, mantienes ese para cuando quieras cargar todos los registros y
aparte creas otro con otro criterio de llenado. El más común sería un
FillByIDdelregistro el cual te llenaría el dataset con el registro del id
correspondiente. Se trataría entonces de generar una query para ese fill que
llevara, por poner un ejemplo, un WHERE ID=@ID. El asistente te crearía lo
que él llama un FillByXXXX y que tu podrías llamar FillByID. De esta forma,
al llamar a ese método no sólo te va a pedir el datatable sobre el que
llenar los datos, sino también el id que vas a proporcionar a la query como
parámetro. Esto es sólo un ejemplo, ya que puedes personalizar la consulta
como desees, usando la cantidad de parámetros que necesites, o puedes tener
todos los métodos Fill que desees.

Otro caso práctico, si quieres hacer una especie de navegador de registros
de forma que te los cargue uno por uno, puedes hacer un FillById que sea del
WHERE ID>@ID donde ese id que le proporcionas sea el id del registro actual
de forma que te cargue el siguiente. En fin, que tienes una multitud de
posibilidades.

Saludos.

Preguntas similares