HtmlTextWriter & MVC 3 Выход бритвы
Это, вероятно, быстрое решение, но я пишу HtmlTextWriter
в моем HtmlHelper
и независимо от того, что я пытаюсь, это кодирование HTML, поэтому вывод показывает разметку.
Helper:
protected override void WriteHtml(System.Web.UI.HtmlTextWriter writer)
{
writer.WriteFullBeginTag("div");
writer.WriteEndTag("div");
base.WriteHtml(writer);
}
и он выведет это на страницу: <div></div>
РЕДАКТИРОВАТЬ
Я называю это так:
@Html.SAIF().Toolbar().Items(items => {
items.Add().Action("Action");
... ...
})
Редактировать № 2
Хорошо, давайте посмотрим, смогу ли я объяснить это немного лучше.
Если я использую ViewContext.Writer для записи моего помощника в поток, при использовании синтаксиса, подобного этому:
@Html.MyHelper
Он выводит закодированный HTML (например) <div>Test Div</div>
= Не правильно
Если я использую синтаксис, как это:
@{Html.MyHelper.Render();}
Он отображает правильно, то есть фактически вставляет div в DOM, а не отображает его в виде строки.
Есть смысл?