Каковы некоторые возможности улучшения производительности ASP.NET GridView? - PullRequest
4 голосов
/ 25 февраля 2009

У меня есть приложение ASP.NET, которое является довольно простым. Он запрашивает некоторые данные и отображает данные в GridView (возможно 0 - 2000 записей). Я пытался найти некоторые способы сделать его более быстрым, лучшие практики и т. Д., Поскольку он кажется немного вялым во время визуализации GridView. Я видел некоторые темы об использовании CSS вместо установки всех стилей непосредственно в GridView, но я не уверен, как это будет выглядеть.

Вот так выглядит GridView прямо сейчас ...

<asp:GridView ID="gvResults" runat="server" DataKeyNames="ORDNO" AutoGenerateColumns="False"
    CellPadding="4" ForeColor="#333333" OnSelectedIndexChanged="gvResults_SelectedIndexChanged"
    Width="100%" OnRowDataBound="gvResults_RowDataBound" meta:resourcekey="gvResultsResource1">
    <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
    <Columns>
        <asp:BoundField DataField="CSTNO" HeaderText="CUST" meta:resourcekey="BoundFieldResource1" />
        <asp:BoundField DataField="ORDNO" HeaderText="RMA NUMBER" meta:resourcekey="BoundFieldResource2" />
        <asp:BoundField DataField="CSTORD" HeaderText="CUST PO NUMBER" meta:resourcekey="BoundFieldResource3" />
        <asp:BoundField DataField="ORDDTE" HeaderText="ORDER DATE" meta:resourcekey="BoundFieldResource4" />
        <asp:BoundField DataField="INVDTE" HeaderText="INVOICE DATE" HtmlEncode="False" meta:resourcekey="BoundFieldResource5" />
        <asp:CommandField ShowSelectButton="true" ButtonType="Link" meta:resourcekey="CommandFieldResource1"  />
    </Columns>
    <EditRowStyle BackColor="#999999" />
    <EmptyDataTemplate>
        <span style="color: Red;">
            <asp:Literal ID="litErrorNoRMAFound" runat="server" EnableViewState="False" meta:resourcekey="litErrorNoRMATagsFoundResource1"
                OnInit="litErrorNoRMAFound_Init"></asp:Literal>
        </span>
    </EmptyDataTemplate>
    <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
    <HeaderStyle BackColor="#3494CC" Font-Bold="True" ForeColor="White" HorizontalAlign="Left" />
    <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
    <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
    <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
</asp:GridView>

Заранее спасибо за любые ваши идеи / комментарии.

EDIT
Требования не допускают подкачки данных. Я также ищу конкретную информацию об использовании CSS и GridView ...

Ответы [ 12 ]

0 голосов
/ 25 февраля 2009

Вы можете вывести первые X элементов, затем, когда страница загрузится, получить следующие X элементов и так далее. Это, вероятно, сделает страницу более привлекательной для конечного пользователя.

Вам также следует выяснить, что именно делает страницу медленной, а также проверить, можно ли оптимизировать запрос к базе данных с помощью индексов или чего-то еще.

0 голосов
/ 25 февраля 2009

Вы ответили на это самостоятельно - застегните это, чтобы сделать это zippier. Используйте обработчик сжатия http.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...