This is a migrated thread and some comments may be shown as answers.

Very Low Performance of RadGrid vs. ASP Grid

1 Answer 103 Views
Grid
This is a migrated thread and some comments may be shown as answers.
archimede
Top achievements
Rank 1
archimede asked on 29 Jun 2010, 05:14 PM
In my web application I'm using ObjectDataSource and Entity Framework to access data. I've tryed to display the same data on ASP Grid and RadGrid.

The time needed to load a RadGrid is two time the time needed by an ASP Grid. Even if it's smart, I cannot wait 5 seconds or more to load a Telerik RadGrid!!! I've enabled paging of 25 items on both grids. The Grid are relatively simple with no skin.

Below there's the RadGrid:

<telerik:RadGrid ID="RadGrid1" runat="server" AllowPaging="True"   
        DataSourceID="ObjectDataSourceInterventi" EnableViewState="False"   
        GridLines="None" PageSize="25" EnableAjaxSkinRendering="False"   
        EnableEmbeddedScripts="False" EnableEmbeddedSkins="False" Skin="">  
        <ClientSettings AllowAutoScrollOnDragDrop="False" AllowExpandCollapse="False"   
            AllowGroupExpandCollapse="False">  
            <Selecting EnableDragToSelectRows="False" />  
            <Scrolling SaveScrollPosition="False" />  
            <Resizing ClipCellContentOnResize="False" />  
        </ClientSettings>  
<MasterTableView autogeneratecolumns="False" datasourceid="ObjectDataSourceInterventi"   
            enableviewstate="False">  
    <CommandItemSettings AddNewRecordImageUrl="AddRecord.gif"   
        ExportToCsvImageUrl="ExportToCsv.gif" ExportToExcelImageUrl="ExportToExcel.gif"   
        ExportToPdfImageUrl="ExportToPdf.gif" ExportToWordImageUrl="ExportToWord.gif"   
        RefreshImageUrl="Refresh.gif" />  
<RowIndicatorColumn FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
        SortDescImageUrl="SortDesc.gif">  
</RowIndicatorColumn>  
 
<ExpandCollapseColumn CollapseImageUrl="SingleMinus.gif"   
        ExpandImageUrl="SinglePlus.gif" FilterImageUrl="Filter.gif"   
        SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif">  
</ExpandCollapseColumn>  
    <Columns>  
        <telerik:GridBoundColumn DataField="IdIntervento" DataType="System.Int64"   
            HeaderText="IdIntervento" SortExpression="IdIntervento"   
            UniqueName="IdIntervento" FilterImageUrl="Filter.gif"   
            SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdAzienda" DataType="System.Int64"   
            HeaderText="IdAzienda" SortExpression="IdAzienda" UniqueName="IdAzienda"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="ChiamataN" DataType="System.Int64"   
            HeaderText="ChiamataN" SortExpression="ChiamataN" UniqueName="ChiamataN"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="Anno" DataType="System.Int16"   
            HeaderText="Anno" SortExpression="Anno" UniqueName="Anno"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdBene" DataType="System.Int64"   
            HeaderText="IdBene" SortExpression="IdBene" UniqueName="IdBene"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="CodiceSAP" HeaderText="CodiceSAP"   
            SortExpression="CodiceSAP" UniqueName="CodiceSAP"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="PostoLavoro" HeaderText="PostoLavoro"   
            SortExpression="PostoLavoro" UniqueName="PostoLavoro"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdReparto" DataType="System.Int64"   
            HeaderText="IdReparto" SortExpression="IdReparto" UniqueName="IdReparto"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdLinea" DataType="System.Int64"   
            HeaderText="IdLinea" SortExpression="IdLinea" UniqueName="IdLinea"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdStabilimento" DataType="System.Int64"   
            HeaderText="IdStabilimento" SortExpression="IdStabilimento"   
            UniqueName="IdStabilimento" FilterImageUrl="Filter.gif"   
            SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="DataChiamata" DataType="System.DateTime"   
            HeaderText="DataChiamata" SortExpression="DataChiamata"   
            UniqueName="DataChiamata" FilterImageUrl="Filter.gif"   
            SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="OraChiamata" DataType="System.TimeSpan"   
            HeaderText="OraChiamata" SortExpression="OraChiamata"   
            UniqueName="OraChiamata" FilterImageUrl="Filter.gif"   
            SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdRichiedente" DataType="System.Int64"   
            HeaderText="IdRichiedente" SortExpression="IdRichiedente"   
            UniqueName="IdRichiedente" FilterImageUrl="Filter.gif"   
            SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdStatoChiamata" DataType="System.Int64"   
            HeaderText="IdStatoChiamata" SortExpression="IdStatoChiamata"   
            UniqueName="IdStatoChiamata" FilterImageUrl="Filter.gif"   
            SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdCategoriaInt" DataType="System.Int64"   
            HeaderText="IdCategoriaInt" SortExpression="IdCategoriaInt"   
            UniqueName="IdCategoriaInt" FilterImageUrl="Filter.gif"   
            SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdSpecializzazione" DataType="System.Int64"   
            HeaderText="IdSpecializzazione" SortExpression="IdSpecializzazione"   
            UniqueName="IdSpecializzazione" FilterImageUrl="Filter.gif"   
            SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdStatoOperativoMacc"   
            DataType="System.Int64" HeaderText="IdStatoOperativoMacc"   
            SortExpression="IdStatoOperativoMacc" UniqueName="IdStatoOperativoMacc"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdUrgenza" DataType="System.Int64"   
            HeaderText="IdUrgenza" SortExpression="IdUrgenza" UniqueName="IdUrgenza"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="DataUrgenzaEntroIl"   
            DataType="System.DateTime" HeaderText="DataUrgenzaEntroIl"   
            SortExpression="DataUrgenzaEntroIl" UniqueName="DataUrgenzaEntroIl"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdCdc" DataType="System.Int64"   
            HeaderText="IdCdc" SortExpression="IdCdc" UniqueName="IdCdc"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
        <telerik:GridBoundColumn DataField="IdAllarme" DataType="System.Int64"   
            HeaderText="IdAllarme" SortExpression="IdAllarme" UniqueName="IdAllarme"   
            FilterImageUrl="Filter.gif" SortAscImageUrl="SortAsc.gif"   
            SortDescImageUrl="SortDesc.gif">  
        </telerik:GridBoundColumn>  
    </Columns>  
    <EditFormSettings>  
        <EditColumn CancelImageUrl="Cancel.gif" EditImageUrl="Edit.gif"   
            FilterImageUrl="Filter.gif" InsertImageUrl="Update.gif"   
            SortAscImageUrl="SortAsc.gif" SortDescImageUrl="SortDesc.gif"   
            UpdateImageUrl="Update.gif">  
        </EditColumn>  
    </EditFormSettings>  
    <PagerStyle FirstPageImageUrl="PagingFirst.gif"   
        LastPageImageUrl="PagingLast.gif" NextPageImageUrl="PagingNext.gif"   
        PrevPageImageUrl="PagingPrev.gif" />  
</MasterTableView>  
        <PagerStyle FirstPageImageUrl="PagingFirst.gif"   
            LastPageImageUrl="PagingLast.gif" NextPageImageUrl="PagingNext.gif"   
            PrevPageImageUrl="PagingPrev.gif" />  
    </telerik:RadGrid> 

What can I do to improve the radgrid performance?

1 Answer, 1 is accepted

Sort by
0
Pavlina
Telerik team
answered on 02 Jul 2010, 09:01 AM
Hello Archimede,

Basically, making a comparison between RadGrid and the default GridView control is not applicable, since RadGrid has many advanced features, and client side functionalities, which cater for a huge array of scenarios, but in some cases cause a performance drag.   Basically, the performance of RadGrid is affected by:
  1. The number of records rendered
  2. The number of columns
  3. Any functionalities such as grouping, scrolling, filtering
  4. Any client side scripts and functions
  5. Any styles applied - images/css classes

Usually, limiting the number of rows/columns has the most impact on the performance. I suggest that you go through the following help link which explains about tips to optimize RadGrid performance.
Client/server grid performance optimizations

You can also consider ajaxifying your grid to improve performance as described in the following help link.
Working with the AJAX mode

I hope this helps.

Kind regards,

Pavlina
the Telerik team

 

Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
Tags
Grid
Asked by
archimede
Top achievements
Rank 1
Answers by
Pavlina
Telerik team
Share this question
or