передавать большие данные в браузер с помощью ASP .net

В настоящее время у меня есть веб-сайт, написанный на классическом asp, который выполняет несколько запросов к sql, объединяет запросы, а затем выводит их для отображения в веб-браузере. (Пейджинг не разрешен) Проблема в том, что веб-сервер агрегирует все результаты запроса перед отображением, что занимает много памяти даже для одного запроса. Простое исправление для классического asp — запись в объект ответа из потока.

По какой-то причине я не могу представить аналог в .net, не требуя службы на странице какого-либо типа. Обычно я привязываюсь к спискам и т. д., поэтому я, вероятно, застрял. Итак, если у меня есть устройство чтения данных из sql, как я могу передать этот объект в браузер, чтобы иметь небольшой объем памяти? Должен ли я вручную вызывать объект ответа и записывать? Это кажется немного задним числом. Я думаю, что я просто пропускаю что-то легкое.

Спасибо.

Добавить:

Итак, что я ищу, так это то, как постепенно передавать данные из программы чтения sql на страницу html, чтобы не тратить память. Это вообще возможно в .net?


person Aur    schedule 04.11.2010    source источник


Ответы (1)


да, я не вижу в этом проблемы. Отключите буферизацию страниц и просто используйте Response.Write

person jasper    schedule 04.11.2010
comment
Есть ли другой способ сделать это? - person Aur; 05.11.2010
comment
есть много других способов, но лучший из них будет зависеть от того, что вы хотите сделать. Можете ли вы сказать мне, почему response.write вам не подходит, и как вы хотели бы его использовать? - person jasper; 05.11.2010
comment
Я ищу другие способы, кроме response.write. Я считаю, что одна из моих проблем заключается в том, что это нарушит поток страницы в asp.net из-за того, что она записывает информацию до или после создания остальной части страницы. - person Aur; 05.11.2010
comment
вы можете использовать <%= someMethod() %>, который сохранит ваш поток в обычном режиме. насколько велики данные, которые вы возвращаете? - person jasper; 06.11.2010
comment
Я забыл о встроенных блоках кода. Я считаю, что это сработало бы идеально, поскольку это происходит в конце этапа рендеринга. Данные могут варьироваться от 0 до 20 000 строк, где данные могут содержать от 1 до 65 тыс. символов. Если у вас есть другие идеи, пожалуйста, дайте мне знать. - person Aur; 07.11.2010