We are currently data binding our grid to an Entity Framework list of objects using the NeedDataSource. There are 160,000 objects with a good amount of data per object. We have paging and filtering by column turned on. There are no groupings or hierarchy. We also have popup editing of rows.
So our question is how can we get the best performance from RadGrid with this setup? Currently, paging through results or doing a filter search on the "Name" of the object is pretty slow. It also takes a two to three seconds to open the popup window to edit the record and same when submitting the edits.
We looked at your Performance demo using LINQ but saw you Cache the entire collection of objects. I don't really think caching a collection of 160,000 objects with some properties being a lot of text sounds like a good idea. I would also think you'd lose performance by not making use of SQL's indexes.
What would you recommend? Would we get performance increases if we used a LINQDataSource instead of assigning our context and objects using the NeedDataSource?
Can the Grid pass Take() and Skip() methods to the database for paging so it is faster?
And it takes about 5 seconds for the grid to return results from a StartsWith filter. Doesn't that simply do a ColumnName LIKE 'SearchTerm%' to the database? Doing this in SQL Management Studio returns instantly but is very slow in RadGrid.
So our question is how can we get the best performance from RadGrid with this setup? Currently, paging through results or doing a filter search on the "Name" of the object is pretty slow. It also takes a two to three seconds to open the popup window to edit the record and same when submitting the edits.
We looked at your Performance demo using LINQ but saw you Cache the entire collection of objects. I don't really think caching a collection of 160,000 objects with some properties being a lot of text sounds like a good idea. I would also think you'd lose performance by not making use of SQL's indexes.
What would you recommend? Would we get performance increases if we used a LINQDataSource instead of assigning our context and objects using the NeedDataSource?
Can the Grid pass Take() and Skip() methods to the database for paging so it is faster?
And it takes about 5 seconds for the grid to return results from a StartsWith filter. Doesn't that simply do a ColumnName LIKE 'SearchTerm%' to the database? Doing this in SQL Management Studio returns instantly but is very slow in RadGrid.