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

Me sale el siguiente error al tratar de paginar...

Estas en el tema de Me sale el siguiente error al tratar de paginar... en el foro de .NET en Foros del Web. Tengo el siguiente error al tratar de paginar un datagrid: AllowCustomPaging must be true and VirtualItemCount must be set for a DataGrid with ID dg ...
  #1 (permalink)  
Antiguo 16/07/2004, 07:30
 
Fecha de Ingreso: septiembre-2003
Ubicación: colombia
Mensajes: 374
Antigüedad: 20 años, 8 meses
Puntos: 0
Me sale el siguiente error al tratar de paginar...

Tengo el siguiente error al tratar de paginar un datagrid:

AllowCustomPaging must be true and VirtualItemCount must be set for a DataGrid with ID dg when AllowPaging is set to true and the selected datasource does not implement ICollection.

Tengo la propiedad de allow paginating a true

Que podria ser?.... salu2 y gracias.
__________________
J-.-`.::
  #2 (permalink)  
Antiguo 16/07/2004, 08:20
 
Fecha de Ingreso: junio-2001
Ubicación: Cordoba, Argentina
Mensajes: 190
Antigüedad: 22 años, 11 meses
Puntos: 0
los datareader como origen de datos no permiten la paginacion automatica, por eso dice que tenes que poner AllowCustomPaging(Paginacion personalizada) la cual tenes que implementar vos,
Para paginar automaticamente tenes que usar un dataset(u otro) que implementa la interfaz ICollection.
__________________
Martin
  #3 (permalink)  
Antiguo 16/07/2004, 08:54
 
Fecha de Ingreso: septiembre-2003
Ubicación: colombia
Mensajes: 374
Antigüedad: 20 años, 8 meses
Puntos: 0
Ya puse la paginacion personalizada, y me está paginando la primera pagina, pero el boton de siguiente (">") y anterior ("<") estan desactivados, que puede pasar con eso???

Gracias Martin Acevedo
__________________
J-.-`.::
  #4 (permalink)  
Antiguo 16/07/2004, 09:03
 
Fecha de Ingreso: junio-2001
Ubicación: Cordoba, Argentina
Mensajes: 190
Antigüedad: 22 años, 11 meses
Puntos: 0
La paginacion personalizada la tenes que programar vos, tenes que poner en la propiedad VirtualItemCount la cantidad de registros totales.... para que el paginador cuente y en el datareader tenes que traer la pagina actual.....

lo general es hacer 2 consultas una que haga count y otro que te traiga la pagina actual

Saludos
__________________
Martin
  #5 (permalink)  
Antiguo 16/07/2004, 09:13
 
Fecha de Ingreso: septiembre-2003
Ubicación: colombia
Mensajes: 374
Antigüedad: 20 años, 8 meses
Puntos: 0
Gracias Martin. la verdad no se como hacerlo, apenas estoy empezando a trabajar con datagrids, si puedes darme un ejemplo te lo agradeceria mucho sino es suficiente con la infirmacion que me has dado, Muchas gracias
__________________
J-.-`.::
  #6 (permalink)  
Antiguo 16/07/2004, 09:40
 
Fecha de Ingreso: junio-2001
Ubicación: Cordoba, Argentina
Mensajes: 190
Antigüedad: 22 años, 11 meses
Puntos: 0
Te digo que la paginacion personalizada no es del todo flexible, sobre todo con sqlserver que no te permite traer los registros de la pagina actual sin usar tablas temporales o cosas asi, lo que baja un poco la performance o es muy rebuscado sobre todo para orednacion y paginacion al mismo tiempo (no como en Mysql que si tiene una forma de traer registros por pagina)

Aca pongo dos links que dicen como hacer la paginacion personalizada..

http://www.dotnetjunkies.com/Tutoria...B871F967F.dcik

http://www.codeproject.com/aspnet/PagingLarge.asp

en este segundo explica varios metodos para paginacion personalizada con SQLServer, fijate que hay varios metodos, algunos metodos son mas rapidos para las primeras paginas y otros para las utlimas paginas, lo cual deberias ver segun la cantidad de registros que vas a tener en tus tablas y combinarlos para que realmente convenga usar este metodo, para la mayoria de las paginaciones es suficiente con la automatica....

Saludos
__________________
Martin
  #7 (permalink)  
Antiguo 16/07/2004, 09:44
 
Fecha de Ingreso: septiembre-2003
Ubicación: colombia
Mensajes: 374
Antigüedad: 20 años, 8 meses
Puntos: 0
osea que segun tu opinion seria mejor hacer un dataset para que me funcione automatico?
__________________
J-.-`.::
  #8 (permalink)  
Antiguo 16/07/2004, 09:59
 
Fecha de Ingreso: junio-2001
Ubicación: Cordoba, Argentina
Mensajes: 190
Antigüedad: 22 años, 11 meses
Puntos: 0
Depende de la cantidad de registros, si son pocos o si es una pagina no muy consultada el usar dataset o datatable es suficiente.

El usar dataset hace que el asp.net se cargue un poco, ya que el dataset se carga todo en la memoria y ademas usa mas recursos de red ya que se pasan todos los datos desde el servidor al asp.net y despues se filtran en el datagrid.

Si usas personalizada el asp.net va a tener menos carga, pero el sqlserver va a tener una carga mayor, sobre todo si van ordenados ademas de paginados, ya que este proceso se realizaria en sqlserver, con una traza te das cuenta, ocupa a veces hasta el doble de tiempo y de cpu. El gran problema es que el sqlserver no tiene un metodo natural para filtrar por paginas. Ademas es mas dicil de programar.....
__________________
Martin
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 09:30.