Отличается ли HttpResponse.Write от StringWriter.Write? - PullRequest
3 голосов
/ 09 февраля 2010

Я обнаружил, что пишу в stringwriter, а затем в конце функции выполняю resp.Write(sw.ToString()).Это ненужно?Если бы я использовал HttpResponse.Write несколько раз, он мог бы отправлять данные несколько раз (кусками), даже если моя страница 2k?Чем HttpResponse.Write отличается от StringWriter.Write?

Ответы [ 2 ]

1 голос
/ 09 февраля 2010

В этом случае нет необходимости создавать промежуточную строку. Вам не нужно беспокоиться о том, что делает сетевой стек (разбит ли HttpResponse.Write на несколько низкоуровневых операций записи в сокеты). Однако вы получите лучшую производительность, просто записав данные, как только они у вас появятся.

1 голос
/ 09 февраля 2010

Используйте Response.Write для форматирования вывода

Где возможно, избегайте использования петель для объединить строки для форматирования макет страницы. Рассмотреть возможность использования Ответ. Напишите вместо этого. Этот подход записывает вывод в ответ ASP.NET буферы. Когда вы проходите через наборы данных или документы XML, используя Response.Write является высокоэффективным подход. Это более эффективно, чем конкатенация контента с использованием + = оператор перед записью контента обратно клиенту. Response.Write внутренне добавляет строки к многоразовый буфер, чтобы он не терпеть накладные расходы производительности выделяя память, в дополнение к очистка этой памяти.

С

Повышение производительности ASP.NET

...