I have a page that allows for up to 10000 rows in an UltrawebGrid. The export feature of the UltrawebgridExcelExporter is very slow w/ this much data (In my case, over a minute). If I drop the number of rows down to 5000, the results are in seconds.
What could be causing the drastic change in speed just to export the data? The databind of the Ultrawebgrid does not show similiar behavior. As a result of the download, the xls files is only 2 Meg.
This is using 8.3 control set.
Hello,
It is really a wild guess here -- but it could be that memory allocated for the process is too low and there is need for virtual memory. My recommendation here is to use a profiler tool to see where the bottle-neck is -- I personally recommend Ants Profiler or JetBrains' DotTrace -- they both provide a lot of functionality and can lead to the problematic spot.
Actually we're experiencing a similar issue. Users have been getting time out errors when exporting more than 11000 items.
We did some profiling on the server and it seems that every time Excel Exporter is used the memory utilization goes way above what's been allowed in the application pool (well over 200 megs), which is crazy. So the server just kicks this process off. We found a different solution to handle Excel Exports (there are many examples online) which seems to work out great so far. I think that there is definately a problem with the control and this is not the first time we experienced this sort of problem with an Infragistics contol.
Mike, just as an FYI, using the Infragistics Excel library, I was able to write my own exporter for a large amount
of rows and it is very fast as well. We don't see the memory issue when doing the databind, but our processor
goes to 100% utilization, which leads me to believe, they have an issue w/ this control. I was told not to
use w/ a dataset larger than 1000 rows, now if only the business would understand that we have their data, they just can't
see it. All my test showed it had to do with the number of columns * the number of rows (ie you can export
more rows if you only had a few columns, but as the number of columns grows, the number of rows needed
to be reduced. As the number of columns or rows was increased, the amount of time to export grew exponentially.