Как получить html-рендер страницы

by DenizK 10. марта 2010 11:43

В одном из проектов возник вопрос как получить html-рендер страницы в текстовом виде для каких то действий. Нашли 2 варианта

Вариант 1. С помощью Server.Execute()

System.IO.StringWriter htmlStringWriter = new System.IO.StringWriter();

Server.Execute("Page.aspx", htmlStringWriter);

string htmlOutput = htmlStringWriter.GetStringBuilder().ToString();

 

Вариант 2. Переопределив  метод Render()

public partial class FilterDemo : System.Web.UI.Page
{
HtmlTextWriter _oldWriter = null;
StringWriter _stringWriter = new StringWriter();
protected override HtmlTextWriter CreateHtmlTextWriter(TextWriter tw)
{
_oldWriter = base.CreateHtmlTextWriter(tw);
return base.CreateHtmlTextWriter(_stringWriter);
}
protected override void Render(HtmlTextWriter writer)
{
base.Render(writer);
string html = _stringWriter.ToString();
html = html.Replace("REPLACE ME!", "IT WAS REPLACED!");
_oldWriter.Write(html);
}
}

 

Оценок нет

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , ,

ASP.NET | Tips & tricks

Комментарии

Комментарии закрыты

О нас

Это блог компании Инлайн. Мы занимаемся разработкой сайтов, корпоративных порталов и корпоративных информационных систем на основе новейших технологии Microsoft  - ASP.NET, SharePoint и Silverlight. А в этом блоге мы размещаем самые последние новости в области разработке для web.

Облако тегов