I need to bind 60 thousand-ish rows to an ultrawebgrid and I cannot find a configuration that gives me acceptable performance.
I'm using an ObjectDataSource returning a DataSet, caching is enabled. The grid has paging enabled, filtering via a filter-row, and sorting enabled. Of course the initial load from the database will be slow...that doesn't worry me. The time it takes to re-sort the list, filter, page, etc, is all 30+ seconds. CPU is pegged the entire time. Anyone know what's going on? It's not hitting the database, these records are in memory, it should be screaming fast. I've thrown every switch I can find in the grid and in the ObjectDataSource to find & fix this bottleneck, but no luck.
Any suggestions out there for best-practices when dealing with medium-large records sets? I've considered dealing with business objects rather than a DataSet, but that seems to make filtering and sorting stuff much more difficult.
Thanks!Walter
Footnote to this question: When I enable AJAX on the grid, the problem seems to go away...paging, filtering, etc, returns in about a second. When I disable AJAX, I get that 30+ second delay with a pegged CPU.
-Walter