захват вывода в ASP.NET MVC - PullRequest
2 голосов
/ 07 мая 2009

Мне нужно захватить все визуализированные выходные данные / html представления, чтобы я мог сохранить результат. Как я могу сделать это в ASP.NET MVC?

Ответы [ 2 ]

1 голос
/ 07 мая 2009

Отличный пост о частичном кэшировании вывода и содержит код о том, как перехватить вывод с помощью атрибута.

Должность: http://blog.codeville.net/2008/10/15/partial-output-caching-in-aspnet-mvc/
Код: http://blog.codeville.net/blogfiles/2008/October/ActionOutputCacheAttribute.cs

0 голосов
/ 05 мая 2011

MVC Просматривает вывод в поток ответов через объект HtmlTextWriter в HttpContext. Итак, один из способов выполнить вашу задачу - заменить существующий объект HttpContext новым, который содержит HtmlTextWriter, который выводится в StringBuilder, а не в поток ответа.

Это довольно просто, если немного сложнее, и подробно рассматривается в этом сообщении в блоге: http://andrewlocatelliwoodcock.com/2011/04/28/capturing-the-output-of-a-view-as-a-string/

Я успешно использовал эту технику для захвата результатов просмотра при отправке в браузер.

Не забывайте: если вы действительно хотите увидеть представление, после того как вы захватили вывод, вам также нужно будет записать его в поток ответов ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...