Hi,
We are using Infragistics controls in our project. We are really concerned about the performance of the controls espically the UltraWebGrid which we are using. There is a huge amount of data that is being displayed in the grid(more than 400 rows and 80 columns) and lots of client side functionalities also. Presently the performance is really poor. Please suggest some ways to increase the performance.
I just wanted to know something about the infragistics support. Like
1. How fast the queries are answered?
2. If we want some additional functionalities to be implemented then is it possible for you people to implement it or not and if yes then how much time will it take?
3. The project we are working on is a really big one and requires a very good perfomance. Will infragistics UltraWebGrid and other controls be able to provide such a good performance?
Akshay
You're putting a grid with 400 rows and 80 columns onto a webpage and you're worried about performance? Before the grid's performance even becomes an issue you might want to check to see what best practice is in developing web-based applications. Your proposed solution sounds barmy.
Dear God, man! That's a 282kb file before you even start looking at data, never mind CSS class names, images, viewstate, client-side code. Why would you even consider doing this?
class Program
{
sw.WriteLine("<html>");
sw.WriteLine("<table>");
}
sw.WriteLine("</html>");
I totally agree to what you are saying but still I wanted some suggestions which I can implement and enhance the performance.
I implemeted customised pagination to reduce the number of rows to 40 and columns are also reduced to 15. But still the performace is less compared to existing window application which works with same data.
If you can put some suggestions they will be highly appreciated and can solve my problems.
Akshay, you'd be well-advised to keep your data display to a minimum, as you have done. Remember, one web server will have to serve multiple clients and you can't tell when they all might decide to jump on at once.
Unfortunately,it's extremely unlikely you're ever going to have the same kind of performance on a web page that you get with a Windows grid but a couple of things you might want to try include
1. Switching ViewState off: if this grid is a report, and there is no need to edit data using the standard methods
2. If you are editing data in-place in the grid, stop. You'll give your users a much better experience if you allow them to edit the row in a separate edit area.
3. If the customers absolutely positively have to have this data via http, you might find it easier to generate an Excel report for them using the Infragistics Excel export tools, rather than going through all the render issues.
4. Examine the various page caching options provided by ASP.Net
I hope you get some ideas from the above and wish you well as you start getting used to the compromises you have to make when moving UI-intensive applications from the desktop to the web.
Mark
Mark,
I think your suggestion will be highly useful. Thanks.
Akshay.