Что такое ASP.NET MVC, эквивалентный «переопределению void Render» из ASP.NET WebForms?
Где у вас есть возможность выполнить некоторую обработку в последнюю минуту перед отправкой вывода клиенту?
Например, я бы не использовал это в рабочем коде, но проиллюстрировал очистку разметки <title>
и <head>
для всего сайта при размещении в MasterPage приложения WebForms.
protected override void Render(HtmlTextWriter writer)
{
System.IO.StringWriter sw = new System.IO.StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
base.Render(htw);
htw.Close();
string h = sw.ToString();
string fhtml = h.Replace("<title>\r\n\t", "\n<title>")
.Replace("\r\n</title>", "</title>")
.Replace("</head>","\n</head>");
// write the new html to the page
writer.Write(fhtml);
}
Каков наилучший подход для воспроизведения окончательного рендеринга текста в ASP.NET MVC?
UPDATE:
Итак, глядя на ссылку (диаграмму), которую упоминал Эндрю Хэйр, похоже, вы могли бы сделать это в View Engine. Можете ли вы сделать что-то новое или изменить способ работы движка View по умолчанию, или вам нужно заменить все это?