这可能是一个快速解决方法,但我正在写HtmlTextWriter
中的HtmlHelper
,无论我尝试什么,它都会对HTML进行编码,因此输出会显示标记。
助手:
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而不是将其显示为字符串。
有意义吗?