Мой сетчатый просмотр отлично работает с 900 + записями. Но я добавил новый столбец, который вычисляет дни в каждой строке. Он принимает сегодняшнюю дату и вычисляет количество дней с даты, возвращаемой из БД.ASP Gridview замедляется с рекордным счетом более 150 после добавления TimeSpan
Аннотация Пример:
-------------------------------
| Something | Date | Days |
-------------------------------
| A | 3/1/2015 | 2 |
| B | 3/1/2014 | 365 |
-------------------------------
I OnRowDataBound каждая строка в RowDataBound настроить текст метки
protected void gvView_RowDataBound (object sender, GridViewRowEventArgs e) {
Label daysInCycle = (Label)e.Row.Cells[0].FindControl("lblDays");
if (e.Row.RowType == DataControlRowType.DataRow) {
DataRowView ThisRow = (DataRowView)e.Row.DataItem;
if (ThisRow.Row.Field<DateTime?> ("MyDate").HasValue) {
TimeSpan ts = DateTime.Now - ThisRow.Row.Field<DateTime>("MyDate");
daysInCycle.Text = ts.Days.ToString();
} else {
daysInCycle.Text = "N/A";
}
}
}
И в моей GridView в файле .aspx
<asp:TemplateField HeaderText="Days">
<ItemTemplate>
<asp:Label ID="lblDays" runat="server" Text="NA"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
Любые идеи о том, почему мой gridview/IE перестанет отвечать на запросы и просто повесить после включения TimeSpan? Если я выберу расчет TimeSpan, gridview вернется к своему нормальному самочувствию.