Есть простое ASP приложение на котором нужно вывести очень большую таблицу. На форме расположен грид вью:
<asp:GridView ID="VTable" runat="server" Width="774px" style="margin-left: 0px"/>
Достаточно тривиально ему указан источник данных :
private void UploadTable(string command)
{
DataTable TABLE = DBWorker.ReturnTable(command));
VTable.DataSource = TABLE;
VTable.DataBind();
}
Однако на моменте привязки DataBind() выскакивает исключение System.OutOfMemoryException
. Прочитал что исключение вызвано тем что в гридвью нельзя записать более 400 000 строк. Однако в таблице их более миллиона, что с этим делать ?
Я думаю не один уважающий себя и пользователей программист не выведет более миллиона строк на одной странице. Это не удобно и потребляет приличное кол-во ресурсов (особенно для сервера).
Для таких целей разбивают на страницы, на одной странице скажем 50 строк, а в самом низу, под таблицей выводится Страница 1.2.3... 90
.
Сделайте это:
Ведь в таком случае вы будете брать не миллион записей и выводить их, а небольшими пачками и только по требованию. Это куда удобнее, как для вас, так и для пользователя. Я уже не говорю про нагрузку на сервер при получение "более миллиона строк".
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Пытаюсь десериализовать json в класс, но выдает ошибку "Не удается преобразовать объект типа "SystemBoolean" в тип "Sell_Offers"" Хочу получить доступ к offers
Ситуация такаяЕсть массив текстбоксов tb[] (на форме их много, допустим начиная с textBox1 по textBox36)
Есть форма в представлении передает данные в контроллер где записываются в БДНужно вернуть в представление Id вставленного обьекта