Vera Tutova Ответов: 1

Сумма столбца в gridview с подкачкой и фильтрацией.



decimal total = 0;
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        total += Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "calc"));
    }
    lblTotal.Text = total.ToString();
}


Что я уже пробовал:

Я беру сумму текущей страницы с этим (я использую подкачку и фильтрацию). Мне нужна вся сумма моего gridview, и когда я фильтрую свой gridview, я тоже хочу, чтобы он обновлялся.

Maciej Los

А что не так с вашим кодом?

Vera Tutova

Я получаю только текущую сумму страниц. Мне нужна общая сумма моего gridview. есть 5 тысяч записей, и я хочу суммировать их все. Я использую подкачку в gridview с 10 записями. этот код дает мне только сумму текущей страницы.

Maciej Los

Вам не кажется, что это плохая идея-вычислять сумму на стороне клиента?
Думать об этом. Вы использовали базу данных, верно?
Если да, то вам, вероятно, нужна такая функциональность на стороне сервера (хранимая процедура). Это должен быть самый быстрый метод.

1 Ответов

Рейтинг:
2

Maciej Los

Пожалуйста, прочтите мой комментарий к этому вопросу.

Для начала я бы рекомендовал прочитать вот это:
Учебник 25: эффективное пролистывание больших объемов данных[^]
Как группировать, сортировать и фильтровать данные в элементе управления DataGrid[^]